jQuery 在单击时显示选择内的输入数据

发布于 2024-12-11 04:14:54 字数 815 浏览 0 评论 0原文

我有一个带有按钮的文本输入。当我填写输入并单击按钮时,我想将该信息添加到选择中。请任何人帮忙,我在任何地方都找不到例子。

Input & button
<input id="new_menu_name" type="text" name="new_menu_name" placeholder="Please enter your menu title">
<input class="add_menu_item" name="add_menu_item" value="Add" type="button">

Select
<select name="menu_items" id="menu_items" size="8" multiple="multiple" style="height:200px; width:250px;">      
</select>

我尝试过使用这个脚本,但没有运气

$(document).ready(function() {
    $(".add_menu_item").click(function(){
 $('#menu_items').
      append($("<option></option>").
      attr("value").
      text(value)); 
    });

JSfiddle http://jsfiddle.net/clintongreen/XDqQL/

I have a text input with a button. When I fill in the input and click the button I want to add that information to a select. Please can anyone one help, I can't find an example anywhere.

Input & button
<input id="new_menu_name" type="text" name="new_menu_name" placeholder="Please enter your menu title">
<input class="add_menu_item" name="add_menu_item" value="Add" type="button">

Select
<select name="menu_items" id="menu_items" size="8" multiple="multiple" style="height:200px; width:250px;">      
</select>

I have tried using this script but with no luck

$(document).ready(function() {
    $(".add_menu_item").click(function(){
 $('#menu_items').
      append($("<option></option>").
      attr("value").
      text(value)); 
    });

JSfiddle
http://jsfiddle.net/clintongreen/XDqQL/

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

把人绕傻吧 2024-12-18 04:14:54

当您调用 attr 时,您实际上并未设置值:您正在检索 value 属性的当前值。您应该使用 val 函数来设置值:

$(".add_menu_item").click(function () {
    $('#menu_items').append(
        $("<option></option>").val(value).text(value)
    );
});

现在我已经看过您的完整代码,很明显另一个问题是您没有设置 value 变量。我想你可能想要类似 this 的东西:(

$(".add_menu_item").click(function () {
    var value = $(this).prev().val();
    $('#menu_items').append(
        $("<option></option>").val(value).text(value)
    );
});

还要注意的是,我已经更改了小提琴以使用 jQuery而不是 Mootools。)

When you call attr, you're not actually setting a value: you're retrieving the current value of the value attribute. You should use the val function to set the value:

$(".add_menu_item").click(function () {
    $('#menu_items').append(
        $("<option></option>").val(value).text(value)
    );
});

Now that I've seen your full code, it's clear that the other problem is that you aren't setting the value variable. I think you probably want something like this:

$(".add_menu_item").click(function () {
    var value = $(this).prev().val();
    $('#menu_items').append(
        $("<option></option>").val(value).text(value)
    );
});

(NB also that I've changed the fiddle to use jQuery rather than Mootools.)

┼── 2024-12-18 04:14:54

尝试将 attr("value").text(value) 更改为 attr("value",value)

try changing attr("value").text(value) to attr("value",value)

绿光 2024-12-18 04:14:54

将其更改为 attr("value", value)attr("value") 返回属性的值。

change that to attr("value", value). The attr("value") returns the value of the attribute.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文