2013-05-13 76 views
0

我在JavaScript中遇到了一些小問題。 我有我使用的一些字段添加到我的表單模板:在jQuery html中替換JavaScript()

<div id="personTemplate" style="display: none;"> 
    <s:url id="personneList" action="personneList" namespace="/ajax" /> 
    <sj:autocompleter name="personnesContacts[ID_XXX]" 
     id="nomPersonne_IDXXX" forceValidOption="false" 
     key="label.serviceContacts" href="%{personneList}" /> 
</div> 

使用jQuery,我得到了我的personTemplate格的內容,那就是:

<input id="nomPersonne_IDXXX" name="personnesContacts[1]" type="hidden"> 
<input autocomplete="off" class="ui-autocomplete-input" name="personnesContacts[ID_XXX]_widget" id="nomPersonne_IDXXX_widget" type="text"> 
<span class="ui-helper-hidden-accessible" aria-live="polite" role="status"></span> 
<script type="text/javascript"> 
    jQuery(document).ready(function() { 
     var options_nomPersonne_IDXXX_widget = {}; 
      options_nomPersonne_IDXXX_widget.hiddenid = "nomPersonne_IDXXX"; 
      options_nomPersonne_IDXXX_widget.selectBox = false; 
      options_nomPersonne_IDXXX_widget.forceValidOption = false; 

      options_nomPersonne_IDXXX_widget.jqueryaction = "autocompleter"; 
      options_nomPersonne_IDXXX_widget.id = "nomPersonne_IDXXX_widget"; 
      options_nomPersonne_IDXXX_widget.name = "personnesContacts[ID_XXX]_widget"; 
      options_nomPersonne_IDXXX_widget.href = "/baseline/ajax/personneList.action"; 
     jQuery.struts2_jquery_ui.bind(jQuery('#nomPersonne_IDXXX_widget'),options_nomPersonne_IDXXX_widget); 
    }); 
</script> 

我試圖取代IDXXX通過一個數字,但它只是在名稱屬性中,這種情況發生了變化。 可能是你的如何更換IDXXX的想法時,我得到的股利內容是這樣的:

<script type="text/javascript"> 
counter = 0; 
function addMorePersons() { 
    counter++; 
    var text = $('#personTemplate').html(); 
    text = text.replace("ID_XXX", counter); 
    $(text).insertAfter($('#personnesContact_0_widget')); 

} 

+0

請顯示_how_您試圖用數字替換IDXXX。 – 2013-05-13 10:08:01

+0

我編輯了這個問題來展示我如何試圖用一個數字替換IDXXX – user1310305 2013-05-13 10:20:36

回答

1

你需要一個全球性的替換功能,如果使用正則表達式,你可以告訴它要全部替換:

text = text.replace(/ID_XXX/g, counter);