在我正在处理的页面上,有很多隐藏的输入:
<input a1="2" a2="1" a3="3" name="Value" type="hidden" value="10">
<input a1="4" a2="2" a3="6" name="Value" type="hidden" value="12">
<input a1="6" a2="3" a3="9" name="Value" type="hidden" value="14">
...
使用以下javascript我想更新某些输入的值:
<script type="text/javascript">
$('[name="value"]').on('input', function () {
$('[a1="' + $(this).attr('ds') + '"]').value = $(this).val();
});
</script>
但是我想仅为那些a1和a2都等于$(this)的输入更新值.val()
答案 0 :(得分:0)
将您的代码更改为:
$('[name="value"]').on('input', function () {
if($(this).attr("a1") == $(this).attr("a2")){
$('[a1="' + $(this).attr('ds') + '"]').value = $(this).val();
}
});
仅当属性 a1 等于属性 a2 时,才会执行更新。
答案 1 :(得分:0)
您只需要一个简单的测试来检查 <{strong> a1
和 a2
是否等于$(this).val()
。
这是您需要的代码:
$('[name="value"]').on('input', function () {
if($(this).attr("a1") == $(this).val() && $(this).attr("a2") == $(this).val()){
$('[a1="' + $(this).attr('ds') + '"]').value = $(this).val();
}
});