我不知道为什么我的 jquery 代码无法从选择选项中获取值。
我创建了一个函数,当我单击“添加新行”按钮时,它将在我的表中创建一个新行。
这是我添加新行的 JS 代码
$(".tambah_sofa").on('click',function(){
html = '<tr id="row_'+i+'">';
html += '<td><button type="button" id="delete-button" data-row-delete="row_'+i+'">X</button></td>';
html += '<td><select name="sofa[]" id="sofa"> <option value="'+sofa_rumah+'">Sofa rumah</option><option value="'+sofa_pejabat+'">Sofa Pejabat</option><option>Sofa Kedai</option><option>Tilam Tak Bujang</option> </select> </td>';
html += '<td>X</td>';
html += '<td><input type="number" name="quantity[]" id="quantity_'+i+'" value="1" disabled="disabled"></td>';
html += '</tr>';
sidebar = '<tr id="row_'+i+'">';
sidebar += '<td><input style="width:50%;" type="text" id="price_sofa" value="" disabled="disabled"></td>';
sidebar += '</tr>';
$('#table_item').append(html);
$('#table_sidebar').append(sidebar);
i++;
});
下面是我的代码,用于将选择的选项值放入文本框中:
$('#sofa').on('change', function () {
$('#price_sofa').val(this.value);
}).trigger('change');
我尝试遵循这个 JSfiddle 演示:http://jsfiddle.net/JwB6z/2/
代码正在工作,但是当我尝试实现“添加新行”功能时,它不起作用。
最佳答案
我相信这是因为任何新行都未被识别。我认为你应该将更改绑定(bind)到 body...
示例:
$('body').on('change', '#sofa', function () {
关于javascript - JQuery 从选择选项获取值不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42183325/