gpt4 book ai didi

javascript - jquery 遍历元素并将事件绑定(bind)到每个元素

转载 作者:行者123 更新时间:2023-11-30 13:19:05 25 4
gpt4 key购买 nike

我需要将按键事件绑定(bind)到一种动态构建的元素形式,见下文

<div class="Customer">
<select name="dropdown1" id="dropdown1">
</select>
<input type="textbox" name="firstname1" id="firstname1">
<input type="textbox" name="lastname1" id="lastname1">
</div>

<div class="Customer">
<select name="dropdown2" id="dropdown2">
</select>
<input type="textbox" name="firstname2" id="firstname2">
<input type="textbox" name="lastname2" id="lastname2">
</div>

... and repeat..

我需要检查,只要上面的任何元素发生变化,没有其他元素是空的。

表单中还有其他几个元素,尽管我只关心代码段中突出显示的这些元素。

非常感谢,

我试过下面的代码

$('.Customer').each(function (index) {

alert("test"); // alerts the correct number of customer rows

$("input:textbox").click(function() {
alert("");
})

});

解决方案应该适用于 jQuery 1.3.2

最佳答案

看到它工作 here

<input type="checkbox" id="test" name="test" disabled="disabled">

<div class="Customer">
<select name="dropdown1" id="dropdown1">
<option value="1.1">1.1</option>
<option value="1.2">1.2</option>
</select>
<input type="text" name="firstname1" id="firstname1">
<input type="text" name="lastname1" id="lastname1">
</div>

<div class="Customer">
<select name="dropdown2" id="dropdown2">
<option value="2.1">2.1</option>
<option value="2.2">2.2</option>
</select>
<input type="text" name="firstname2" id="firstname2">
<input type="text" name="lastname2" id="lastname2">
</div>​

$('.Customer input, .Customer select').bind("change keyup", function(){
var me = $(this);
var clicked = me.attr("name");
var empty = false;
$('.Customer input,select').each(function(){
var elem = $(this);
if (elem.val() == "") {
empty = true;
}
});
if (empty) {
$('#test').attr('disabled','disabled')
} else {
$('#test').removeAttr('disabled')
}
});​

PS:输入中没有类型 textbos。是文字。为了在发生更改时触发回调,您使用“更改”而不是“点击”事件。如果您希望它同时适用于输入和下拉菜单,则需要“输入,选择”

关于javascript - jquery 遍历元素并将事件绑定(bind)到每个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10938471/

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