HTML代码:
<tr class="item-row">
<td>
<input type="button" class='del' value="" style="z-index:16; background-image:url(../images/delete.png); background-repeat:no-repeat; background-position:left center; text-align:right;"/>
</td>
<td>
<input type="button" name="pilihItem[]" value="i" id="pilihItem" class="pilihItem">
</td>
<td>
<input type="text" id="nama_item" name="nama_item[]" value="" style="width: 200px;">
</td>
</tr>
<tr class="item-row">
<td>
<input type="button" class='del' value="" style="z-index:16; background-image:url(../images/delete.png); background-repeat:no-repeat; background-position:left center; text-align:right;"/>
</td>
<td>
<input type="button" name="pilihItem[]" value="i" id="pilihItem" class="pilihItem">
</td>
<td>
<input type="text" id="nama_item" name="nama_item[]" value="" style="width: 200px;">
</td>
</tr>
jQuery代码打开子窗口:
$("#pilihItem").click(function(){
var id = 1;
var name = $(this).prev().attr("name");
var url = "../formItem.php?id=" + id + "&name=" + name;
window.open(url, 'Pilih Item', 'location=1,status=1,scrollbars=1,resizable=no,width=800,height=300');
});
将值设置为父窗口的jQuery代码:
window.opener.$("#nama_item").val($.trim(nama_item));
问题 :
我无法设置单击#pilihItem按钮的#nama_item文本框的值。
它总是将文本框设置在第一行。任何帮助都感激不尽。
最佳答案
您使用ID选择输入,而应该使用唯一的输入。
您或者需要将ID更改为唯一(无论如何,它们在DOM中都应该是唯一的),或者将复选框的名称更改为类似...<input type="text" name="nama_item[1]" value="" style="width: 200px;">
并在弹出窗口中更改您的JS以使用此名称代替ID ...window.opener.$("input[name='nama_item[1]']").val($.trim(nama_item));
关于jquery - window.opener不会将值返回到正确的文本框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15386817/