【问题标题】:jQuery display input data inside select on clickjQuery在点击时显示输入数据
【发布时间】:2011-10-19 21:22:39
【问题描述】:

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

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/

【问题讨论】:

标签: jquery select input


【解决方案1】:

当您调用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。)

【讨论】:

  • 嗨,谢谢,我试过了,但它仍然有效,这是小提琴,jsfiddle.net/clintongreen/XDqQL
  • 哇,伙计,你是炸弹,对不起我对 Mootools 的不好,我本来打算选择 jquery,干杯
  • 您好,很抱歉打扰您,但我想添加一个 if 语句,以便它仅在文本长度大于 0 时写入选择框。我该怎么做?谢谢
【解决方案2】:

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

【讨论】:

    【解决方案3】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多