我正在将选项附加到选择元素,并希望在满足条件时禁用这些选项。我试过这个:
if (myProp === "") {
$.each(response,
function(index, item) {
myDDL.append(new Option(item.TextValue, item.valId).attr('disabled', true));
});
}
但这会导致错误,Object doesn't support property or method 'attr'
. 我知道我可以通过编写整个 HTML 选项语法来做到这一点,但我喜欢我示例中代码的清洁度。 这可以使用我正在使用的语法来完成吗?
attr()
是jQuery对象上的方法。Option
对象具有一个可以改用的disabled
属性:
if (myProp === "") {
$.each(response, function(index, item) {
myDDL.append(new Option(item.TextValue, item.valId).disabled = true;
});
}
话虽如此,以这种方式混合jQuery和本机JS有点奇怪。我建议使用其中一个,如下所示:
if (myProp === "") {
$.each(response, function(index, item) {
myDDL.append(`<option value="${item.valId}" disabled="disabled">${item.TextValue}</option>`);
});
}