2012-12-17 83 views
0

我需要使用JQuery选择动态ID,一旦我选择它,然后我需要对它做一些操作。jQuery选择动态ID

<input id="content_photos_attributes_1355755712119_image" name="content[photos_attributes][1355755712119][image]" size="30" type="file"> 

HTML包含ID和Name属性。我不在乎哪一个我可以选择,只要它被选中。 这是我迄今为止尝试过的,没有成功。

<script type="text/javascript"> 
jQuery.noConflict(); 
jQuery("#add_photo_product").click(function() { 

alert("Handler foooor .click() called."); 

//var field = $("input[id *= 'content_photos_attributes_']"); 
var field = $('input[name*="content"]'); 
alert (field); 

}); 

第一个选择器工作,我可以很容易地抓住它。只要它被执行,那么DOM就会被填充(我在HTML代码下)。

我尝试了各种组合,但它始终为空。

我该怎么做?

+0

可能重复://计算器.com/questions/13917734/selecting-dynamic-id-jquery) – Danger14

回答

2

尝试更换此

jQuery("#add_photo_product").click(function() { 

jQuery("#content_photos_attributes_1355755712119_image").click(function() { 

你都赚不到这是在你的HTML代码所示id

运行你测试好只是做简单的警报测试它是否可行

那样

alert(1);  // this will alert 1 

EDIT2>

,如果你有一个像一个变量的ID,那么你也可以像[选择动态ID的JQuery(HTTP的那

var myid = "content_photos_attributes_"+your_variable+"_image" ; 
      // note that your_variable is this which generates 1355755712119 

    jQuery("#"+myid).click(function() { 
+0

感谢您的意见。 @Goodmood如果我使用第二个示例,它将不起作用,因为该数字总是动态的,但文本总是相同的。所以我需要这样的解决方案:jQuery(“#content_photos_attributes_XXXXXXXXXXX_image”)。click(function(){X是akways改变的内容。我怎样才能控制这个项目并运行onclick?谢谢! –

+0

can you give me这个XXX是什么?这个变量是什么? –

+0

看我更新的答案 –

2

您运行jQuery.noConflict(),这意味着$不是jQuery。尝试使用jQuery而不是$