将表单变量从HTML传递到Javascript,但带引号

时间:2016-02-12 22:56:13

标签: javascript html forms email

我试图将HTML表单中的电子邮件地址传递到javascript代码段以传递给其他程序。

表格输入:

<input name="email" placeholder="Enter Email Address Here" type="email" required="required" id="email_input">

这是我正在寻找的一个例子,请注意引号。 要使电子邮件通过,必须在引号内。

<script type="text/javascript">
test({

  email: "example@example.com", 

});
</script>

以下是我尝试的内容:

<script type="text/javascript">
test({

  email: "document.getElementById("email_input");", 

});
</script>

如果我使用像example@example.com这样的静态值,一切都按预期工作。我无法弄清楚如何将电子邮件输入字段中的值传递给&#34;电子邮件:&#34; javascript并让它通过。

继承我需要的东西:我在那里 document.getElementById(&#34; email_input&#34;); 不起作用,这应该是什么?

我知道我在这里错过了一些简单的东西,只是不确定是什么。

提前致谢!

2 个答案:

答案 0 :(得分:0)

如果您只是尝试使用该test对象传递电子邮件输入的值,则这就是您所需要的。

var emailString = document.getElementById("email_input").value;
test({

  email: emailString, 

});
</script>

您想首先获取输入的值,然后将其作为字符串传递(假设您需要第一个示例中的字符串)

答案 1 :(得分:0)

从另一个typeof元素(DOM元素,Number,Array,...)获取字符串有两种方法:

<script type="text/javascript">
    var elmt = document.getElementById("email_input");

    var str1 = elmt.toString();
    var str2 = elmt + "";
    // alert(str1); and alert(str2) will pop the same result : a string of elmt
</script>

所以如果你想把整个输入作为字符串,你应该这样做:

<script type="text/javascript">
test({

  email: document.getElementById("email_input") + '' 

});
</script>

如果您只想将输入值作为字符串(所以电子邮件),您应该这样做:

<script type="text/javascript">
test({

  email: document.getElementById("email_input").value + '' 

});
</script>

如果你真的需要在字符串中添加引号,你也可以这样做:

<script type="text/javascript">
    var str= "this is my string";
    var withquote= ' " ' + str + ' " ';

    //both of the var return a string but one will have a quote and the other won't
    alert(str); // pop: this is my string
    alert(withquote); // pop "this is my string"
</script>

所以在你的情况下:

如果您想将整个输入作为带引号的字符串,您应该这样做:

<script type="text/javascript">
test({

  email: ' " ' + document.getElementById("email_input") + ' " ' 

});
</script>

如果您只想将输入值作为带引号的字符串(以及电子邮件),您应该这样做:

<script type="text/javascript">
test({

  email: ' " ' + document.getElementById("email_input").value + ' " ' 

});
</script>
希望我已经说清楚了 随意问我是不是

有一个好的

相关问题