当我点击按钮提交表单时,我有以下函数调用:
function dadosFormularios(preenchimentoForm){
//var path = document.location.pathname;
//alert(path);
alert(preenchimentoForm);
//window.location.href = 'wp-content/themes/template/index.php';
var qstringA = '';
//dados dos campos
var nome=document.getElementById("nome").value;
qstringA = 'nome='+ nome;
//alert(qstringA);
if(preenchimentoForm==false){
alert('Please correct the errors in the Form');
}
else{
if(preenchimentoForm==true){
window.location.href = 'index.php?'+qstringA;
return false;
}
}
}
由于我正在使用这种处理数据的方式,如何提醒我的页面index.php
函数发送的数据到达索引?我不能使用if (isset($_POST['button']..)
因为我通过函数而不是通过表单按钮发送信息,对吗?
答案 0 :(得分:2)
window.location.href = 'index.php?'+qstringA;
这一行只是重定向到index.php,带有查询字符串?nome=nome_value
。
例如。 index.php?nome=nome_value
因此,在您的index.php
中,您只需使用$_GET
发布所有内容。
在那里print_r($_GET);
进行检查。
在index.php
中,您只需查看
if(isset($_GET["nome"])){
//Nome is set
//Do something here
}
PS 虽然在不知道使用此功能的其他情况或原因的情况下,可以说这个功能正在做一个简单的<form action=index.php>
会做的事情。
P.P.S。虽然您在标题中提到了jQuery
并且还标记了它,但我不确定此函数是否正在使用任何jQuery代码。我认为这只是一个简单的Javascript
函数。
答案 1 :(得分:1)
如果您使用的是jQuery,请查看.ajax()
。请记住,它是异步的,因此结果可能不是您认为的那样。您无需重新加载整个页面(这是window.location.href = 'index.php?'+qstringA;
将要执行的操作),只是为了提交信息。
如果您希望在alert
调用完成时ajax
或其他内容,您可以定义一个函数来调用成功的ajax调用。
答案 2 :(得分:1)
使用ajax(),如:
$.ajax({
type: 'POST',
url: url,
data: data,
success: success,
dataType: dataType
});