我的表单函数是用PHP编写的,需要传递两个变量。不过,我必须使用Javascript提交表单和变量。我知道我可以使用.submit()
实际使用JavaScript提交表单,但是需要传递给表单函数的变量存储在JavaScript中的两个变量中。当我使用JavaScript提交表单时,我很难理解如何传递这些.submit()
变量。
我的一个想法是将隐藏字段添加到我的html表单中,并将这些隐藏输入值的值设置为我的JavaScript变量中的值。
我想知道是否有一种使用.submit()
并通过JavaScript传递变量的方法?
发布于 2015-12-10 01:15:39
在没有FormData的普通普通JS解决方案中签出jQuery:
var formData = new FormData();
formData.append("username", "Groucho");
formData.append("accountnum", 123456);
var request = new XMLHttpRequest();
request.open("POST", "http://foo.com/submitform.php");
request.send(formData);
有一些示例如何与现有的表单一起使用它:
联署材料:
var docFormElement = document.getElementById('myForm');
var docFormData = new FormData(docFormElement);
docFormData.append("product_license","Enterprise");
var xhrObject = new XMLHttpRequest();
xhrObject.open("POST","postform.cfm");
xhrObject.send(docFormData);
HTML:
<form id="myForm">
<input name="product_name" type="text" value="ColdFusion" />
<input name="product_codename" type="text" value="Zeus" />
</form>
发布于 2015-12-10 00:39:13
您可以保留一个隐藏的输入或一个javascript变量来跟踪值。然后可以使用AJAX向PHP页面提交值:
<input id="name" type="hidden" .....
....
var dataString = 'name='+ name + '&email=' + email + '&phone=' + phone;
//alert (dataString);return false;
$.ajax({
type: "POST",
url: "yourpage.php",
data: dataString,
success: function() {
//do something
}
});
详情:
http://code.tutsplus.com/tutorials/submit-a-form-without-page-refresh-using-jquery--net-59
或者,您只需更新隐藏的输入值并提交表单:
<script type="text/javascript">
function submitform()
{
document.forms["formID"].submit();
}
</script>
<form id="formID" action="somepage.php">
Search: <input type='hidden' name='email'>
<a href="javascript: submitform()">Submit</a>
</form>
https://stackoverflow.com/questions/34191684
复制相似问题