使用JQuery打印动态文本框值

时间:2013-09-10 16:05:32

标签: javascript jquery

我有一个像

这样的场景
for(int i = 0; i < 10; i++)
{
    <input type = "text" id="test"+i value="" onchange="getValue(i)">
}

我想使用jquery打印选定的文本框值。我尝试下面的代码,....

function getValue(id)
{
   var value = $("#test"+id).val();
   alert(value);
}

上述代码无法正常工作。 如果我尝试var value = document.getElementById("test"+id);那么它就可以了。

2 个答案:

答案 0 :(得分:0)

jsBin demo

var inp = ''; // String will hold all inputs

for(var i=0; i<10; i++){
    inp += '<input type="text" id="test'+i+'" value="" />'; // Generate 10 inputs
}

$('body').append( inp ); // All inputs to HTML

$('input[id^="test"]').on('input', function(){
    console.log( this.value );
});

答案 1 :(得分:0)

  1. 您不能只是将原始HTML放在JavaScript循环中。您必须设置字符串或创建元素并将其附加到DOM。

  2. "getValue(i)"是一个字符串。 "i"不是变量i,它实际上是一个字母 i 的字符串。
    如果要连接字符串和变量,则必须这样做像这样:

  3. var name = "Neil";    
    var greeting = "Hi, my name is " + name + ", nice to meet you!";