假设我有以下HTML代码,如何将用户的输入传递给执行(str)JavaScript函数作为参数?
<body>
<input name="textbox1" type="text" />
<input name="buttonExecute" onclick="execute(//send the user's input in textbox1 to this function//)" type="button" value="Execute" />
</body>
答案 0 :(得分:31)
您可以通过名称访问元素的值:
document.getElementsByName("textbox1"); // returns a list of elements with name="textbox1"
document.getElementsByName("textbox1")[0] // returns the first element in DOM with name="textbox1"
所以:
<input name="buttonExecute" onclick="execute(document.getElementsByName('textbox1')[0].value)" type="button" value="Execute" />
或者您为该元素指定一个ID,然后使用getElementById
来识别该ID:
<input name="textbox1" id="textbox1" type="text" />
<input name="buttonExecute" onclick="execute(document.getElementById('textbox1').value)" type="button" value="Execute" />
答案 1 :(得分:15)
与将文本作为变量传递相反,您可以使用DOM来检索函数中的数据:
var text = document.getElementsByName("textbox1").value;
答案 2 :(得分:2)
您可以在onclick事件中获取输入值,如下所示:
onclick="execute(document.getElementById('textbox1').value);"
您当然必须在文本框中添加ID
答案 3 :(得分:1)
的document.getElementById( 'TextBox1的')。值
答案 4 :(得分:1)
这就是我所做的。 (适应所有答案)
<input name="textbox1" type="text" id="txt1"/>
<input name="buttonExecute" onclick="execute(document.getElementById('txt1').value)" type="button" value="Execute" />
有效。感谢大家。 :)
答案 5 :(得分:1)
如果我理解正确的话,
<!DOCTYPE HTML>
<HEAD>
<TITLE>Passing values</TITLE>
<style>
</style>
</HEAD>
Give a number :<input type="number" id="num"><br>
<button onclick="MyFunction(num.value)">Press button...</button>
<script>
function MyFunction(num) {
document.write("<h1>You gave "+num+"</h1>");
}
</script>
</BODY>
</HTML>
答案 6 :(得分:0)
您可以通过dotNet编程中的以下简单示例获取文本框值和ID
<html>
<head>
<script type="text/javascript">
function GetTextboxId_Value(textBox)
{
alert(textBox.value); // To get Text Box Value(Text)
alert(textBox.id); // To get Text Box Id like txtSearch
}
</script>
</head>
<body>
<input id="txtSearch" type="text" onkeyup="GetTextboxId_Value(this)" /> </body>
</html>