这里是新手。我继承了一些未完成的页面,在一个页面上有两个下拉菜单,一旦在第一个中选择了值,就使用on change jquery事件创建子下拉菜单。
与用户交谈后,不需要这些下拉菜单之一来执行此操作。两组下拉菜单的名称和ID不同,但类别相同。我想了解事件中修改了下拉列表的名称或ID,但到目前为止在语法上还没有运气。
编辑:我在这里添加了on change事件代码以供参考。 html下拉列表是由一些真正奇怪的嵌套局部视图生成的
$(document).on("change",
".genericClass",
function () {
$(this).addClass("updated");
if ($(this).hasClass("blank")) {
$(this).removeClass("blank");
var $newAddRow = $(this).parents(".relationControl:first").find(".relationAddRowTemplate")
.clone().removeClass("relationAddRowTemplate")
.addClass("relationAddRow")
.show();
$newAddRow.insertAfter($(this));
}
});
答案 0 :(得分:0)
您可以使用下面的代码,您将获取触发事件的select元素引发的ID
$(document).on("change",
".genericClass",
function () {
alert($(this).attr('id'));
$(this).addClass("updated");
if ($(this).hasClass("blank")) {
$(this).removeClass("blank");
var $newAddRow = $(this).parents(".relationControl:first").find(".relationAddRowTemplate")
.clone().removeClass("relationAddRowTemplate")
.addClass("relationAddRow")
.show();
$newAddRow.insertAfter($(this));
}
});
答案 1 :(得分:0)
您有两个选择:
1-使用监听器
select.addEventListener( 'change', event => {}); then event.target
2-添加范围监视
$scope.$watch(function () { return self.selectedValue; }, function (newValue, oldValue) {
if (newFilter != oldFilter) {
// call what ever you want
}
}, true);