2013-10-11 80 views
1

我試圖在輸入元素中存儲文本值。該元素由jquery選擇器訪問,其中變量selectedindex包含下拉列表中的整數(它將包含0,1,2)。下面是包括HTML和JavaScript將變量存儲在輸入文本框中的文本

<li id="ID1"> 
     <p><label>Parts:</label> 
      <input type="text" name="0" class="lab" /> 
      <input type="text" name="1" class="lab" /> 
      <input type="text" name="2" class="lab" /> 
     </p> 
</li> 


    var index = b.selectedIndex; 
    var usr_input = $("#spinner").spinner("value"); 
    $("#ID1 > p > input[name$=index]").text(usr_input); 

的問題是選擇器沒有找到使用可變「索引」的特定的輸入元素的代碼。我將0硬編碼到選擇器中進行測試,目的是$("#ID1 > p > input[name$=0]").text(usr_input);,因爲它選擇了名稱爲0的輸入。我怎樣才能使用變量來實現這一點。

回答

1

試試這個:

$("#ID1 > p > input[name$="+index+"]").val(usr_input); 

你需要什麼是變量連接成你的選擇,你可以做到這一點通過結束/與"開始字符串,並使用+與變量串接它。

如果你的目標一個輸入,你應該使用.val()

+0

謝謝!如果我可能會問,爲什麼你需要將變量連接到選擇器? – lboyel

+1

@lboyel,如果你不連接jQuery會認爲它是一個字符串,並尋找名稱以「index」結尾的東西,而不是索引這個詞的存儲值。 – Sergio

1

字符串連接,還可以使用.val()用於文本輸入:

("#ID1 > p > input[name$=" +index + "]").val(usr_input); 
1

嘗試

$("#ID1 > p > input[name$="+index+"]").text(usr_input); 
相關問題