Javascript 从文本框中获取输入值

Javascript 从文本框中获取输入值,javascript,html,input,textbox,Javascript,Html,Input,Textbox,我正在尝试从文本框中获取文本 我有两个不在表单中的输入文本框,我试图检索值,并将其存储在变量中 此代码在弹出的警报框中返回未定义的 <script> var userPass = document.getElementById('pass'); var userName = document.getElementById('fName'); function submit(){ alert(userPass.value); } <

我正在尝试从文本框中获取文本

我有两个不在表单中的输入文本框,我试图检索
,并将其存储在变量中

此代码在弹出的警报框中返回
未定义的

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

您有多个具有相同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>
密码

请参见,
td
input
都共享id值
pass
您将注意到
input
标记中没有值attr。
另外,尽管未显示,但请确保在html就位后运行Javascript。

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

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


函数提交(){
var userPass=document.getElementById('pass');
var userName=document.getElementById('user');
警报(用户值);
警报(通过值);
}


提交


这是电子邮件和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 = "ni@gmail.com";
document.write('<a href="mailto:'+email+'?subject='+subject+'&body='+content+'">SUBMIT QUERY</a>');
params=getParams();
subject=“ULM查询:”;
subject+=unescape(参数[“FormsEditField3]”);
content=“电子邮件:”;
content+=unescape(参数[“FormsMultiLine2]”);
内容+=“查询:”;
content+=unescape(参数[“FormsMultiLine4]”);
var电子邮件=”ni@gmail.com";
文件。写(“”);
//注意:使用“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"); 
}

Javascript文档.getElementById(“”)值;或者使用jquery


$(“#”)val()

我不同意马修的观点。继续做你正在做的事情,学习基础知识。许多jQuery用户似乎跳过了这一步。然后,当你有了一个坚实的基础,你可能会或可能不会决定使用其中的许多JavaScript库在那里。我知道它有和ID命名通过事故。谢谢大家,谢谢,就是这样。谢谢你的帮助我看到了,谢谢。我甚至都没意识到我给这个命名了。如果我的输入元素中有一个默认值,我会认为每个浏览器在这方面都有点不同。
params = getParams();
subject = "ULM Query of: ";
subject += unescape(params["FormsEditField3"]);
content = "Email: ";
content += unescape(params["FormsMultiLine2"]);
content += "      Query:    ";
content += unescape(params["FormsMultiLine4"]);
var email = "ni@gmail.com";
document.write('<a href="mailto:'+email+'?subject='+subject+'&body='+content+'">SUBMIT QUERY</a>');
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"); 
}