2013-10-11 78 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); 
相关问题