gpt4 book ai didi

javascript - jquery .prop() 不适用于复选框

转载 作者:行者123 更新时间:2023-12-02 17:21:42 25 4
gpt4 key购买 nike

在一个非常简单的问题上碰头(如果你知道在哪里寻找它,我想)我请求你的建议。

我有一个用 PHP 构建的这样的表:

echo '<tr><td class="report"><input type="checkbox" id="crediti['.$i.']" name="crediti['.$i.']" value="'.$cred['id_cre'].'" ';
if($check == 1){ echo "checked";}else{ echo "";}
echo' /></td><td class="report">'.$cred['id_cre'].'</td>
<td class="report">'.number_format($cred['gbv_tot'],'2',',','.').'</td>
<td class="report"><input class="input_field" type="text" name="chiesto['.$i.']" value="'.$chiesto.'"></td>
<td class="report"><input type="text" name="ammesso['.$i.']" value="'.$ammesso.'"></td>
<td class="report"><input type="text" name="data_ammesso['.$i.']" value="'.$data_ammesso.'" class="data_field"></td></tr>';

如果用户在该行的输入字段之一中输入值,我还有一些 jquery 代码来检查每个复选框。

$('.input_field').blur(function(){
if($(this).val()!=''){
$(this).closest("input").prop("checked", true);
}
});

我已经验证选择器正在识别正确的复选框,但我无法设法将该复选框变为选中状态。没有任何错误被抛出。只是什么也没发生。我究竟做错了什么?我应该在哪里查找错误?

提前致谢!

最佳答案

您需要将复选框定位在同一行中。

.closest()找到一个匹配的祖先元素,因此该复选框不是该复选框元素的祖先,这就是它不起作用的原因。

您需要找到已更改字段的 tr 父级,然后找到其中的复选框。

$(this).closest("tr").find("input:checkbox").prop("checked", true); 

关于javascript - jquery .prop() 不适用于复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23888595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com