2012-01-16 126 views
18

我试图从文本框中获取文本。从文本框获取输入值

我有2个输入文本框不在窗体中,我试图检索value并将其存储在一个变量中。

该代码在弹出的警告框中返回undefined

<script> 
    var userPass = document.getElementById('pass'); 
    var userName = document.getElementById('fName'); 
    function submit(){ 
     alert(userPass.value); 
    } 
</script> 

当我与userName.value运行作为警报功能的参数,它会工作,并显示什么都你在框中键入。

下面是HTML:

<table id="login"> 
     <tr> 
      <td><label>User Name</label></td> 
     </tr> 
     <tr> 
      <td colspan="2"><input class="textBox" id="fName" type="text" maxlength="30" required/></td> 
     </tr> 
     <tr> 
      <td id="pass"><label>Password</label></td> 
     <tr> 
      <td colspan="2"><input class="textBox" id="pass" type="text" maxlength="30" required/></td> 
     </tr> 
     <tr> 
      <td><input type="button" class="loginButtons" value="Login" onclick="submit();"/>&nbsp&nbsp&nbsp 
      <input type="button" class="loginButtons" value="Cancel"/></td> 
    </table> 
+0

Beanno1116 2012-01-16 01:37:59

+0

您的问题是什么? – blake305 2012-01-16 01:38:28

+0

添加相关html – 2012-01-16 01:38:44

回答

6

你会注意到你在input标记中没有任何值attr。
此外,虽然未显示,但确保在之后运行Javascript是html已到位。

+0

我的输入元素应该有一个默认值吗? – Beanno1116 2012-01-16 05:06:06

+0

尝试一下,我会假设每个浏览器在这方面有点不同。 – 2012-01-16 14:33:48

2

你有相同ID的多个元素。这是一个很大的禁忌。确保您的输入有唯一 ID。

<td id="pass"><label>Password</label></td> 
<tr> 
    <td colspan="2"><input class="textBox" id="pass" type="text" maxlength="30" required/></td> 
</tr> 

看到,无论是tdinput股票价值pass的ID。

+0

是的,我看到了,谢谢。我甚至没有意识到我命名为​​。欣赏帮助 – Beanno1116 2012-01-16 05:05:08

1

td元件中删除id="pass"。现在,js将获得td元素而不是输入,因此该值未定义。

+0

谢谢,这是wat。感谢帮助 – Beanno1116 2012-01-16 05:03:59

5

<script> 
    function submit(){ 
     var userPass = document.getElementById('pass'); 
     var userName = document.getElementById('user'); 
     alert(user.value); 
     alert(pass.value); 
    } 
</script> 

<input type="text" id="user" /> 
<input type="text" id="pass" /> 
<button onclick="submit();" href="javascript:;">Submit</button> 

0

这是电子邮件和JavaScript的示例代码。

params = getParams(); 
subject = "ULM Query of: "; 
subject += unescape(params["FormsEditField3"]); 
content = "Email: "; 
content += unescape(params["FormsMultiLine2"]); 
content += "  Query: "; 
content += unescape(params["FormsMultiLine4"]); 
var email = "[email protected]"; 
document.write('<a href="mailto:'+email+'?subject='+subject+'&body='+content+'">SUBMIT QUERY</a>'); 
4

//注意:使用“this.pass”和“this.name”将创建即使它是在函数中的全局变量,所以厌倦你的命名约定的

function submit() 
{ 
    var userPass = document.getElementById("pass").value; 
    var userName = document.getElementById("user").value; 
    this.pass = userPass; 
    this.name = userName; 
    alert("whatever you want to display"); 
} 
1

Javascript document.getElementById(“<%= contrilid.ClientID%>”).value;或使用jquery

$(“#<%= txt_iplength.ClientID%>”)。val();