我需要确切地找到包含值priview' 2'
的td行我知道td行的前半部分ID,但它是动态的:MovementNumber_M_*
(其中*
可以是1到Milion)
因此需要搜索包含MovementNumber_M_1
的{{1}}到MovementNumber_M_9999
的所有行,并直接返回包含该值的td行ID。
保证正确且有帮助的答案;)
// EDIT
MovementNumber_M_*.value=2
OK值= 1适用于init,这就是为什么警告所有行但是如果值为2那么jq找不到他为什么? 函数DgIdOnClick是inicialized @
function DgIdOnClick (e,r){
var MovementNumber = document.getElementById(e).value;
//alert('MovementNumber: '+MovementNumber+' Type :'+r);
var result = $('[id^="MovementNumber_M_"][value='+MovementNumber+']');
result.each(function(){
alert($(this).attr("id"));
});
}
函数DgIdOnClick在其他.js文件
上如果我正在警告IN DgIdOnClick警报(document.getElementById(' MovementNumber_M_2')。value)// MovementNumber_M_2那么值是2但是jq没有找到它
答案 0 :(得分:1)
这会警告包含该值的每行的ID
var result = $('[id^="MovementNumber_M_"][value="2"]');
result.each(function(){
alert($(this).attr("id"));
});
更新
即使在输入更新
上,这也会警告所有输入的id值为2$("#button").click(function(){
$('[id^="MovementNumber_M_"]').each(function(){
var value = $(this).val();
if(value == 2){
alert($(this).attr("id"));
}
});
});
答案 1 :(得分:0)
您可以使用Attribute Starts With Selector [name^="value"]和Attribute Equals Selector [name="value"]
的组合 var myElement= $("[id^='MovementNumber_M_'][value=2]");
根据评论,如果您需要ID,请使用attr()
var myElementId = $("[id^='MovementNumber_M_'][value=2]").attr('id');
答案 2 :(得分:0)
$('#TableID').find('td').filter(':contains("SOME_TEXT")');
答案 3 :(得分:0)
前2个答案的字符串编码同样不正确。应该是这样的:
$('[id^="MovementNumber_M_"][value="2"]');