Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.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/html输入。需要帮助_Javascript_Html_Text - Fatal编程技术网

javascript/html输入。需要帮助

javascript/html输入。需要帮助,javascript,html,text,Javascript,Html,Text,我试图使用一个表单从javascript中的html文本框调用变量。 我的html如下所示: <script type='javascript'> var X = 5; </script> <input type='text' name='name'> <input type='button' onclick='document.getElementById("output").innerHTML = name.value' value='cli

我试图使用一个表单从javascript中的html文本框调用变量。
我的html如下所示:

<script type='javascript'>
    var X = 5;
</script>
<input type='text' name='name'>
<input type='button' onclick='document.getElementById("output").innerHTML = name.value' value='click'>
<p id='output'></p>

var X=5;

问题是,当您单击按钮时,段落会显示您在文本输入中键入的内容。脚本似乎正在以字符串形式接收name.value的值。如何解决这个问题,使文本框为X时段落显示5?

1)所有“值”始终是一个字符串。如果要将其转换为其他内容,则需要手动执行

2) 你不是在传递X,而是在传递“name.value”。在这种情况下,name是某种类型的变量(不在示例中)。您可能需要获取输入字段“name”的值,在这种情况下,您需要给您的name输入一个id(“例如nameInput”),然后获取其值:

document.getElementById('nameInput').value;  //(your html would be <input id='nameInput' type='text' etc. etc. /> 

尝试将name.value替换为:
window[name.value]

当变量以字符串形式表示时,我认为没有办法从变量中获取值。似乎这是最简单的方法:

<input type='text' name='name'>
<input type='button' onclick='document.getElementById("output").innerHTML = ((name.value == "X") ? ("5") : (name.value))' value='click'>
<p id='output'></p>


如果要使用“document.getElementById(“output”).innerHTML=X”,则不会使用txtbox。我只是想用txtbox从javascript文件调用一个变量。你的问题不清楚。你到底想完成什么?看起来您正试图从文本框A中获取值,然后将其放入文本框B。如果是这样,那么解决方案2就是您所需要的(在我上面的建议中)。在你的代码中,你把X作为你的值,所以,我在帮助你理解为什么你看到你看到的东西,尽管X看起来是任意的和不相关的。你直接指定
name.value
作为值,你期望它给你
X
的确切值是多少?魔术看起来你在问这个问题之前没有考虑过。@ShadowWizard或者你看起来不太好
X
是一个值为
5
的变量。无论如何,我不知道在Javascript中是否可以从变量名中获取变量的值。@Robinj我认为“影子向导”这样说是因为问题不太清楚。似乎询问者可能想要X的值。@RobinJ这可能是,在这种情况下是正确的方法。事实上,看起来这才是OP真正想要的。
<input type='text' name='name'>
<input type='button' onclick='document.getElementById("output").innerHTML = ((name.value == "X") ? ("5") : (name.value))' value='click'>
<p id='output'></p>