[英]How to input text into text field with javascript
I have a form on a wordpress site with a text field for an email adress which looks like this: 我在wordpress网站上有一个带有文本字段的表单,用于填写电子邮件地址,如下所示:
<div class="tnp-field tnp-field-email"><label>Email</label><input class="tnp-email" type="email" name="ne" required></div>
I can get the email address from a get parameter (www.domain.com/?email=test@mail.com) like this: 我可以从get参数(www.domain.com/?email=test@mail.com)获取电子邮件地址,如下所示:
<script type='text/javascript'>
function getUrlVars() {
var vars = {};
var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
vars[key] = value;
});
return vars;
}
function getUrlParam(parameter, defaultvalue){
var urlparameter = defaultvalue;
if(window.location.href.indexOf(parameter) > -1){
urlparameter = getUrlVars()[parameter];
}
return urlparameter;
}
var emailtxt = getUrlParam('email','');
How can I fill the text field with emailtxt ? 如何用emailtxt填充文本字段?
You can just set the value of the input field ( HTMLInputElement.value = "value"
). 您可以只设置输入字段的值( HTMLInputElement.value = "value"
)。
document.querySelector("input[name=ne]").value = getUrlParam('email','');
<div class="tnp-field tnp-field-email"><label>Email</label><input class="tnp-email" type="email" name="ne" required></div> <script type='text/javascript'> function getUrlVars() { var vars = {}; var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) { vars[key] = value; }); return vars; } function getUrlParam(parameter, defaultvalue){ var urlparameter = defaultvalue; if(window.location.href.indexOf(parameter) > -1){ urlparameter = getUrlVars()[parameter]; } return urlparameter; } var emailtxt = getUrlParam('email',''); console.log(emailtxt); document.querySelector('input[name=ne]').value = emailtxt; </script>
You can try DOM id selector: 您可以尝试使用DOM ID选择器:
<input class="tnp-email" type="email" name="ne" id="yourId" required>
document.getElementById("yourId").innerHTML = "Your text";
You can use DOM class name selector like this: 您可以使用DOM类名称选择器,如下所示:
var x = document.getElementsByClassName("tnp-email");
x[0].value = "Your value";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.