在同一段脚本中使用多个 div id
Using multiple div id's with same piece of script
我在一个页面上有几个 select 框,基本上只要这些框中的任何一个发生 onchange 事件,我就想使用相同的代码,而不是为每个 [=22] 创建一个单独的脚本=] 盒子的 id。原因是我最终可能会在一个页面上有几十个这样的 select 框,所有重复的代码只会变得混乱。
<select name="drop_list_menu_1" id="drop_list_menu_1">
<option value="letter:a">A</option>
<option value="letter:b">B</option>
<option value="letter:c">C</option>
</select>
<select name="drop_list_menu_2" id="drop_list_menu_2">
<option value="letter:a">A</option>
<option value="letter:b">B</option>
<option value="letter:c">C</option>
</select>
<select name="drop_list_menu_3" id="drop_list_menu_3">
<option value="letter:a">A</option>
<option value="letter:b">B</option>
<option value="letter:c">C</option>
</select>
我处理 onchange 事件的代码:
<script type="text/javascript">
$(document).ready(function () {
// if user chooses an option from the select box...
$("#drop_list_menu_1").change(function () {
//doin some stuff
});
</script>
那么,我怎样才能得到这个:
$("#drop_list_menu_1").change(function () {
//doin some stuff
});
捕捉正在使用的页面上的任何 select 框?包含正则表达式的东西?
给元素一个commonclass(id属性可以保留)然后使用委托:
$(document).on("change", "your-select-class", function() {
var changedElement = this;
// ...
});
您只需要一次调用来设置事件处理程序,它会根据您在页面上的需要复制多少份。
将相同的 class 分配给每个 Select 并如下调用它。
$(".ClassName").change(function (e) {
var SelectId = e.target.id
});
就这么简单
$("select").change(function () {
alert('a');
});
您可以使用 jQuery's attribute starts-with selector 到 select 所有名称以“drop_list_menu_”开头的下拉菜单:
$("select[name^='drop_list_menu_']").change(function(){
//doin some stuff
});
我在一个页面上有几个 select 框,基本上只要这些框中的任何一个发生 onchange 事件,我就想使用相同的代码,而不是为每个 [=22] 创建一个单独的脚本=] 盒子的 id。原因是我最终可能会在一个页面上有几十个这样的 select 框,所有重复的代码只会变得混乱。
<select name="drop_list_menu_1" id="drop_list_menu_1">
<option value="letter:a">A</option>
<option value="letter:b">B</option>
<option value="letter:c">C</option>
</select>
<select name="drop_list_menu_2" id="drop_list_menu_2">
<option value="letter:a">A</option>
<option value="letter:b">B</option>
<option value="letter:c">C</option>
</select>
<select name="drop_list_menu_3" id="drop_list_menu_3">
<option value="letter:a">A</option>
<option value="letter:b">B</option>
<option value="letter:c">C</option>
</select>
我处理 onchange 事件的代码:
<script type="text/javascript">
$(document).ready(function () {
// if user chooses an option from the select box...
$("#drop_list_menu_1").change(function () {
//doin some stuff
});
</script>
那么,我怎样才能得到这个:
$("#drop_list_menu_1").change(function () {
//doin some stuff
});
捕捉正在使用的页面上的任何 select 框?包含正则表达式的东西?
给元素一个commonclass(id属性可以保留)然后使用委托:
$(document).on("change", "your-select-class", function() {
var changedElement = this;
// ...
});
您只需要一次调用来设置事件处理程序,它会根据您在页面上的需要复制多少份。
将相同的 class 分配给每个 Select 并如下调用它。
$(".ClassName").change(function (e) {
var SelectId = e.target.id
});
就这么简单
$("select").change(function () {
alert('a');
});
您可以使用 jQuery's attribute starts-with selector 到 select 所有名称以“drop_list_menu_”开头的下拉菜单:
$("select[name^='drop_list_menu_']").change(function(){
//doin some stuff
});