我有:
var row = 22;
如何设置它以便我的所有输入和选择元素 可以禁用XXX可以是任何字符组合的ID:
modal_XXX_22
答案 0 :(得分:2)
这就是你选择它们的方式:
$('[id^="modal_"][id$="_' + row + '"]').
答案 1 :(得分:1)
您可以尝试Multiple Attribute
选择器:
$('*[id^="modal_"][id$="_'+row+'"]').prop('disabled', true)
// ^- ^-- ^--- attribute ends with selector
// | |
// | --- attribute starts with selector
// ---- all selector
答案 2 :(得分:0)
尝试:
$(':input[id^="modal_"][id*="_'+ row +'_"]')
虽然更好的HTML设置是单个元素包装输入。
答案 3 :(得分:0)
您可以遍历所有子节点并检查id是否包含您想要的字符串。像这样:
$(document).ready(function(){
$('ul').children().each(function(){
var id = $(this).attr('id');
if (typeof(id) !== 'undefined') {
if (id.indexOf('22') != -1) {
$(this).css('color','red');
}
}
});
});
如果您希望它在整个文件上运行,您可以将其更改为
$('body').children()...
答案 4 :(得分:0)
$('input[id^="modal_"][id$="_'+N+'"],select[id^="modal_"][id$="_'+N+'"]')
.attr('disabled','disabled');