2012-01-30 101 views
0

我有很多的文本框這是動態創建的:如何相同jQuery調用不同ID的對象?

<?php 
    $columns = $_POST['n_cols']; 
    for ($i=0; $i<$columns; $i++) { 
     ?> 
     <input type='text' id="autocol_<?php echo $i; ?>" name="autocol_<?php echo $i; ?>"> 
     <?php 
    } 
?> 

然後,我有一個jQuery調用,使這些文本框的行爲爲自動完成字段:

<script type="text/javascript"> 
    /*<![CDATA[*/ 
    jQuery(function($) { 
     jQuery('#autocol_').autocomplete({'showAnim':'fold','select':function(event, ui) { 
     },'source':'/myproject/index.php?r=Controller/autocomplete&table=newtable'}); 
    }); 
    /*]]>*/ 
</script> 

是在jQuery中有一種方法可以使用上述函數來處理動態創建的所有文本框的自動填充字段,並且它們具有不同的ID?像jQuery的東西將採取所有的文本框的ID開始'autocol'然後管理所有這些自動完成功能?

感謝

+0

這比可能更多,你將不得不建立每個人說自己的解決方案,使其工作。記住你不僅僅限於id。您可以使用類的一個功能塊來定義多個元素,然後通過ID或其他類給出的功能分解。導致你的元素也不限於每個類的一個類。 – chris 2012-01-30 03:17:08

回答

4

是的,有這樣的選擇:

jQuery('input[id^=autocol_]').autocomplete... 
+0

它工作順利。謝謝! – ivantxo 2012-01-30 04:20:44

2

您的情況, 做

$("[id^='autocol_']") 

$("input[id^='autocol_']") 

但你可以把class屬性組的元素以後宗旨 像:

<input type='text' class='autocol_input' id="autocol_<?php echo $i; ?>" 

,以後你可以用class代替id 喜歡選擇:

$(".autocol_input').autocomplete.... 
+0

我也會嘗試使用類。謝謝! – ivantxo 2012-01-30 04:21:22

相關問題