Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何找到值为x的td元素id?_Javascript_Jquery - Fatal编程技术网

Javascript 如何找到值为x的td元素id?

Javascript 如何找到值为x的td元素id?,javascript,jquery,Javascript,Jquery,我需要准确地找到包含值priview“2”的td行 我知道td行的前半部分id,但它是动态的:MovementNumber\u M*(其中*可以是1到百万) 因此,需要搜索从MovementNumber_M_1到MovementNumber_M_9999中包含MovementNumber_M*.value=2的所有行,并直接返回包含该值的td行id 你能帮我吗?谢谢你的建议 保证回答正确且有用;) //编辑 function DgIdOnClick (e,r){ var Movemen

我需要准确地找到包含值priview“2”的td行

我知道td行的前半部分id,但它是动态的:
MovementNumber\u M*
(其中
*
可以是1到百万)

因此,需要搜索从
MovementNumber_M_1
MovementNumber_M_9999
中包含
MovementNumber_M*.value=2
的所有行,并直接返回包含该值的td行id

你能帮我吗?谢谢你的建议

保证回答正确且有用;)

//编辑

   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"));
    });
 }
OK value=1表示init,这就是为什么我们会提醒所有行,但如果value为2,那么jq找不到他为什么? DgIdOnClick函数已被取消@

 $( document ).ready(function() {  
    var SecondDiagnosis=$( "span[id^='lov_Dg2Id_D_']" );
    var SpanBlock2=SecondDiagnosis.find('a');
    var eventH2=SpanBlock2.attr( "onclick" );
    SpanBlock2.attr("onclick", "DgIdOnClick(document.getElementById('MovementNumber_D_'+parentElement.getAttribute('id').substring(12)).id,2);"+eventH2);

    var FirstDiagnosis=$( "span[id^='lov_DgId_D_']" );
    var SpanBlock=FirstDiagnosis.find('a');
    var eventH=SpanBlock.attr( "onclick" );
    SpanBlock.attr("onclick", "DgIdOnClick(document.getElementById('MovementNumber_D_'+parentElement.getAttribute('id').substring(11)).id,1);"+eventH);
});
函数DgIdOnClick位于其他.js文件中


如果我在DgIdOnClick alert(document.getElementById('MovementNumber_M_2').value)//MovementNumber_M_2中发出警报,则值为2,但jq没有创建它

您可以使用和的组合

根据注释,如果需要id,请使用
attr()


前两个答案的字符串编码同样不正确。这应该是:

$('[id^="MovementNumber_M_"][value="2"]');

这会提醒包含该值的每一行的ID

var result = $('[id^="MovementNumber_M_"][value="2"]');
result.each(function(){
    alert($(this).attr("id"));
});

更新:

这会警告值为2的所有输入的id,即使在输入更新时也是如此

$("#button").click(function(){

$('[id^="MovementNumber_M_"]').each(function(){
    var value = $(this).val();
    if(value == 2){
        alert($(this).attr("id"));
    }
});

});

您能否共享一个html示例此变量myId=$('[id^=MovementNumber\u M!]'[value=2]);正在返回:object:(但需要)id@Speakwithsystem,使用
var myElementId=$(“[id^='MovementNumber\u M_']][value=2]”)。attr('id');
这里我使用了
attr()
functionYes!但是返回的值不是一个id,而是:Object-perfect这只是现在才起作用,我遇到了一个巨大的问题:(@Form,即使我更改了它们保留的值。是否有可能读取实际值?在输入字段中,实际值为3,但jq找到了1 id=“MovementNumber\u M\u 1002”value=“1”似乎liek my system bug这不是一个bug,它取决于您何时执行代码。在我的示例中,代码在加载页面时执行一次。您希望在更改事件上执行此代码,或者甚至在指定的按钮单击上执行此代码。代码在onclick事件上执行,我查看@elements面板行上的值未更改:@:(你是如何改变你的值的?你能把你的代码放在一个提琴中吗?它仍然缺少你的HTML。如果
MovementNumber
在你的代码中发出了
2
警报,并且在随后的代码中找不到它,那么它们显然不是针对同一个元素。如果你能用提琴重新创建你的情况,我可以修复。)那里的代码。
$('[id^="MovementNumber_M_"][value="2"]');
var result = $('[id^="MovementNumber_M_"][value="2"]');
result.each(function(){
    alert($(this).attr("id"));
});
$("#button").click(function(){

$('[id^="MovementNumber_M_"]').each(function(){
    var value = $(this).val();
    if(value == 2){
        alert($(this).attr("id"));
    }
});

});