我似乎无法在我的javascript中添加选项标记。帮我sifu。
我正在尝试做的是添加按钮的功能。
var scntDiv = $('.input');
var i = $('.input p').size() + 0;
$('.add').on('click', function() {
$('<p><input type="text" name="barcode' + i + '" id="textbox_input1" placeholder="Barcode"/> <input type="text" name="item' +i+ '" id="textbox_input1" placeholder="Item"/> <input type="number" name="qtty' +i+ '" id="textbox_input1" placeholder="Quantity"/> <input type="number" name="min' +i+ '" id="textbox_input1" placeholder="Minimum"/> <select name="category' +i+ '" id="textbox_input1"/><option value="Grocery">Grocery</option><option value="Furniture">Furniture</option></select> <input type="text" name="price' +i+ '" id="textbox_input1" placeholder="Price"/> <input type="text" name="promo' +i+ '" id="textbox_input1" placeholder="Promo"/> <button type="button" class="remove" id="button">Remove</button></p>').appendTo(scntDiv);
i++;
return false;
});
请帮帮我。我的问题是单击添加按钮时不显示选项值。这个
<select name="category' +i+ '" id="textbox_input1"/><option value="Grocery">Grocery</option><option value="Furniture">Furniture</option></select>
没有在脚本中给出任何选项。
答案 0 :(得分:0)
直播改为:
$('body').on('click', '.add', function() {
// do something
});
注意:将'body'更改为.add的父元素,最好是带有ID的父元素。
另请参阅jQuery 1.9 .live() is not a function和jQuery - how to use the “on()” method instead of “live()”?
JSfiddle:http://jsfiddle.net/samliew/tPdyT/
答案 1 :(得分:0)
我建议不要使用.live()并升级到最新版本的jQuery 1.9.1。
i ++仅适用于循环内部,因此请考虑使用.each()
$('document')。on('click','。add',function(e){ e.preventDefault(); // 做一点事 });
有关下次代码的更多帮助,请说明您要实现的目标,并发布更多代码,以便我们最好地回答您的问题。
答案 2 :(得分:0)
本规范不是最佳做法。
答案 3 :(得分:0)
在编写选项标记之前,使用<select/>
关闭select元素。哪个应该是<select>
。也就是说,删除第一个标记末尾的额外/
。
所以它变成了这样:
<select>
<option></option>
<option></option>
</select>
而不是:
<select/>
<option></option>
<option></option>
</select>
当然,添加您之前使用的属性。
我还建议看一下其余的答案。