我有一个要求,就是在检查一个方框时,用一个值填充同一行的输入。
我的代码是:
function populatetransportprice() {
// iterate through the "checked" checkboxes
$("table.authors-list").find('input[type="checkbox"][name^="treated"]:checked').each(function () {
alert(treatedtransportcostperton);
row.find('input[name^="transportprice"]').val(treatedtransportcostperton.toFixed(2));
});
}
每行的输入字段为tranpsortpriceX
,其中X为行号。
我的HTML是:
<table class="authors-list" id="ordertable">
<tr>
<td><input name="transportprice1" id="transportprice1" class="rounded"></td>
</tr>
<tr>
<td><input name="transportprice2" id="transportprice2" class="rounded"></td>
</tr>
<tr>
<td><input name="transportprice3" id="transportprice3" class="rounded"></td>
</tr>
</table>
警告会为表中的每个复选框填充,但不会填充输入。
我假设我的row.find
。
任何建议表示赞赏, 感谢
更新
当前语法:
function populatetransportprice() {
$("table.authors-list").find('input[type="checkbox"][name^="treated"]:checked').each(function () {
$(this).find('input[name^="transportprice"]').val(treatedtransportcostperton.toFixed(2));
$(this).next('input[name^="transportprice"]').val(treatedtransportcostperton.toFixed(2));
});
}
答案 0 :(得分:1)
'row'没有在任何地方定义。
$("table.authors-list").find('input[type="checkbox"][name^="treated"]:checked').each(function () {
alert(treatedtransportcostperton);
//Try $(this) instead of row. Here 'this' implies each and every element in the loop and then it finds within the element. I think the following code might help,
$(this).find('input[name^="transportprice"]').val(treatedtransportcostperton.toFixed(2));
$(this).next('input[name^="transportprice"]').val(treatedtransportcostperton.toFixed(2));
//the above is an assumption. Post your HTML
});
答案 1 :(得分:1)
如果没有看到这种影响的标记,很难给出准确的答案。
但是,根据您提供给我们的有限详细信息,我希望这不起作用的原因是您的row
变量。
我们没有其他代码显示如何设置,但我怀疑row
未正确设置,或者没有引用您认为的元素。< / p>
您最好的选择是在row
内设置each
,这样您就可以确保定位与输入相关的行。
类似的东西:
function populatetransportprice() {
// iterate through the "checked" checkboxes
$("table.authors-list").find('input[type="checkbox"][name^="treated"]:checked').each(function () {
var row = $(this).closest('tr'),
priceInput = row.find('input[name^="transportprice"]');
alert(treatedtransportcostperton);
priceInput.val(treatedtransportcostperton.toFixed(2));
});
这假设“行”确实是表格行tr
。