在ajaxsubmit上执行php函数
这是一个建立在wordpress上的网站。我有一个小系统,其中来自特定div在ajaxsubmit上执行php函数,php,ajax,forms,Php,Ajax,Forms,这是一个建立在wordpress上的网站。我有一个小系统,其中来自特定div“contentdiv”的一些内容通过ajaxsubmit通过电子邮件发送给我。请注意,它没有使用标记,因为您会在下面的代码中注意到它。其余的事情都很简单 HTML:内容在div内生成,并通过input type=submit提交 <div id="content-div"> //php generated content </div> <input type="submit
“contentdiv”
的一些内容通过ajaxsubmit通过电子邮件发送给我。请注意,它没有使用
标记,因为您会在下面的代码中注意到它。其余的事情都很简单
HTML:内容在div内生成,并通过input type=submit
提交
<div id="content-div">
//php generated content
</div>
<input type="submit" value="SUBMIT-CONTENT" id="button" onClick="handleFormSubmit()">
//php生成的内容
AJAX-提交和重定向通过以下代码完成
<script language="javascript" type="text/javascript">
function handleFormSubmit()
{
var button = document.getElementById('button');
button.style.display = 'none';
}
</script>
<script type="text/javascript">
jQuery(document).ready(function($)
{
$('#button').click(function(){
$.ajax({
type: 'POST',
url: 'http://awesomeness.com/pathto/processForm.php',
data:{'message':$('#content-div').html(),'client': $('#some-field').val() },
success:function(data) {
window.location = "http://awesomeness.com/thanks/";
}
});
});
});
</script>
函数handleFormSubmit()
{
var button=document.getElementById('button');
button.style.display='none';
}
jQuery(文档).ready(函数($)
{
$(“#按钮”)。单击(函数(){
$.ajax({
键入:“POST”,
网址:'http://awesomeness.com/pathto/processForm.php',
数据:{'message':$('content div').html(),'client':$('seme field').val(),
成功:功能(数据){
window.location=”http://awesomeness.com/thanks/";
}
});
});
});
php只包含基本的html电子邮件代码。下面是它的外观:
$to = "emailto@awesomepeople.com";
$subject = "NEW ARTICLE";
$message .= $_POST['message'];
$client = $_POST ['client'];
$headers = "From: awesomesite <someone@website.com>" . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
mail($to, $subject, $message, $headers);
$to=”emailto@awesomepeople.com";
$subject=“新文章”;
$message.=$_POST['message'];
$client=$_POST['client'];
$headers=“From:awesomesite”。“\r\n”;
$headers.=“MIME版本:1.0\r\n”;
$headers.=“内容类型:text/html;字符集=ISO-8859-1\r\n”;
邮件($to、$subject、$message、$headers);
所有这些都运行良好。现在,当访问者点击“提交内容”按钮时,需要运行另一个php函数。此函数作为链接提供
<a class='wpfp-link' href='?wpfpaction=reset' rel='nofollow'>RESET</a>
通常,单击此链接会触发一个功能,该功能基本上会清除浏览器缓存并重置主“content div”。请注意,我不需要这个功能的网页上的链接。我只需要在submit上运行该功能。基本上,当访问者单击“提交内容”时,链接中的功能应该像单击“重置”链接一样执行。这可能发生在成功提交时,然后表单必须按照其常规进行,例如提交到processForm.php和重定向等。我希望我所要求的是可能的。如果是,怎么做?非常感谢 这是不可能的,至少不是你怎么描述的 当您执行Ajax请求时,您正在发送参数,然后您可以解析请求的响应 这里我猜
wpfpaction=reset
的输出将是HTML。一种可能性是用ajax查询对wpfpaction=reset
的响应替换页面的当前HTML代码
请参阅此问题:必须有某个函数正在解析
wpfpaction
键和reset
值的查询字符串。我建议在窗口之前找到该函数并调用它。位置
此外,对于那些能够看到已删除问题的人来说,昨天提出的问题是有意义的,我将查找该函数,我删除了它,因为解决方案毫无用处,抱歉。@yb我找到了单击时触发的函数。它是wpfp\u reset\u selected(){…}
。我现在知道我应该如何把它放在窗前了。地点,也许你可以告诉我答案。我相信这会奏效的。谢谢。假设wpfp_reset_selected
是一个PHP函数,您应该能够在ProcessForm.PHP
中定义函数的.PHP
文件中包含该函数,并使用wpfp_reset_selected()调用它
在ProcessForm.php
完成之前。