Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:如何;获得;来自动态生成输入的值_Javascript - Fatal编程技术网

Javascript:如何;获得;来自动态生成输入的值

Javascript:如何;获得;来自动态生成输入的值,javascript,Javascript,我使用php生成动态输入,示例生成代码 HTML <input type='text' name='name1' onBlur='getValue(1)'> <input type='text' name='name2' onBlur='getValue(2)'> <input type='text' name='name3' onBlur='getValue(3)'> <input type='text' name='name4' onBlur='ge

我使用php生成动态输入,示例生成代码

HTML

<input type='text' name='name1' onBlur='getValue(1)'>
<input type='text' name='name2' onBlur='getValue(2)'>
<input type='text' name='name3' onBlur='getValue(3)'>
<input type='text' name='name4' onBlur='getValue(4)'>
<input type='text' name='name5' onBlur='getValue(5)'>

或者更多

Javascript

function getValue(x){
    var nam = document.myForm.name[x].value;  <<< error?
    if(nam>1000){
        document.myForm.name[x].focus;   <<< error?
        alert ("input > 1000");
    }
}
函数getValue(x){

var nam=document.myForm.name[x].value;
document.myForm.name['name'+x].value;
document.myForm.name['name'+x].focus()

用法:

getValue(1);

Gabe,谢谢你的工作示例很好,但是一旦我将你的代码实现到我的项目中,焦点就不起作用了,当我使用“Tab”时,它总是显示下一个对象在哪个浏览器中焦点不起作用。我只在chrome中测试过。@user149339…查看我的更新答案。应该可以解决焦点问题…在chrome、FF、IE7、IE8和IE9中测试过我相信你的方式是收集,只是它不起作用,我以前的项目我也编写了类似“document.myForm.NAMEX.focus;”但这一次,这个项目不起作用了,同一台电脑,同一个浏览器(firefox和chorme),但你的工作示例的工作方式很好……只使用不同选项卡的同一个浏览器!我不知道你的意思,上面的代码显然是解决方案。为什么有两个名称?document.myForm.*name**['name'+x].value;您的代码是
,因此元素的名称是'name1',而不是'1'。在您的问题中,您试图找到名为“1”的元素,但元素的名称是“name1”,而不是“1”。有意义吗?哦,我明白了,所以第一个名称是保留字“name”,然后是我的第二个名称(在毯子内)是我输入的名字……对吗!?内联js是邪恶的。
getValue(1);