Javascript - 如何在按钮的onClick中访问文本字段的值?

时间:2012-01-31 07:44:58

标签: javascript button onclick textfield

我只想知道如何在按钮的onClick中获取文本字段的值。 我明白了:

<INPUT TYPE="text" NAME="GetLink_textField" VALUE="Geben Sie den Dateipfad an!" SIZE=50>
<INPUT TYPE="button" NAME="GetLink_button" VALUE="Get link" onClick="getLinkToFile(?????)">

我想传递函数文本字段GetLink_textfield的值。我该怎么做呢? 我尝试了GetLink_textfield.value,但这不起作用。

4 个答案:

答案 0 :(得分:2)

GetLink_textfield.value不起作用的原因是因为没有名为GetLink_textfield的对象。

您需要使用以下代码:

function getLinkToFile() {
  var e = document.getElementsByName('GetLink_textField')[0];
  var val = e.value;
  // Do the rest here
}

答案 1 :(得分:1)

document.getElementsByName("GetLink_textField")[0].value

但是,如果给textfield一个ID,可能会更好,并使用document.getElementById(“GetLink_textField”)。

这样,你将获得对象,而不是包含它的数组,因为ID必须是唯一的,但名称不是。

答案 2 :(得分:0)

在文本字段中添加ID属性,然后在javascript函数中使用该ID来获取值。您无需发送任何争论。例如 -

function getLinkToFile(){
       var textVal=document.getElementById('idname').value;
}

答案 3 :(得分:0)

如果您以编程方式生成输入或想要使用多于1个元素(输入按钮,输入文本)的元素,请尝试做一些棘手的事情:

执行“for”或其他内容并将“for”变量(通常称为“i”)附加到输入文本名称,按钮和javascript函数,结果将生成如下内容:

<INPUT TYPE="text" NAME="GetLink_textField_0" VALUE="Geben Sie den Dateipfad an!" SIZE=50>
<INPUT TYPE="button" NAME="GetLink_button_0" VALUE="Get link" onClick="getLinkToFile(0)">

<INPUT TYPE="text" NAME="GetLink_textField_1" VALUE="Geben Sie den Dateipfad an!" SIZE=50>
<INPUT TYPE="button" NAME="GetLink_button_1" VALUE="Get link" onClick="getLinkToFile(1)">

<INPUT TYPE="text" NAME="GetLink_textField_2" VALUE="Geben Sie den Dateipfad an!" SIZE=50>
<INPUT TYPE="button" NAME="GetLink_button_2" VALUE="Get link" onClick="getLinkToFile(2)">

然后在你的函数中:

function getLinkToFile(position){
   var inputVal = document.getElementsByName("GetLink_textField_" + position)[position].value;
   //now you got inputVal of the element in the position you want.
}

希望这会有所帮助,如果这不是您所需要的,您可以尝试上面的示例。

此外,建议您使用Id作为输入。

问候!