【发布时间】:2012-08-09 01:02:21
【问题描述】:
我有这个表格,有 2 个提交按钮:
<form method="post" onsubmit="send_mail(this);return false">
<select name="liste">
<option value='0'>Choose list</option>
<option value="1">list1</options>
<option value="2">list2</options>
</select>
<p>Subject: <input type="text" name="subject" /><br />
<div id="editor">
<textarea value="editor1" name="editor1">Some text here</textarea>
</div>
<input type="submit" value="Sent Mail!" />
<div id="testmail">
<p><input type="button" onsubmit="send_Testmail(this);return false" value="Sent Test" />
To: <input type="text" name="testemail" /><br />
</div>
</form>
在表单上,如您所见,它有这个 javascript 函数:onsubmit="send_mail(this);return false
看起来像这样:
function send_mail(form) {
jQuery.post('editor.php', jQuery(form).serialize(), function(data) {
jQuery('#center').html(data);
});
}
该脚本将表单数据发送到我的 editor.php 脚本,该脚本处理并发送邮件,然后返回“电子邮件发送”。脚本将<div> 替换为<form>,并使用此return 语句。这是我想要的工作。
现在我想创建另一个按钮和输入文本框,让用户在提交之前输入电子邮件并发送上述表单的测试。
我该怎么做?问题是 2 按钮总是提交 javascript send_mail,因为它附加到表单标签onsubmit。
这可能是一个基本问题 - 我希望有人能指出我正确的方向。
编辑/更新:
澄清一下:第一个按钮应该将 $post 发送到我的 editor.php 文件,并且 javascript 替换了包含整个表单的 div。我的第二个按钮应该将 $post 发送到我的 testmail.php 文件,并且只替换包含此按钮的 div 并输入文本字段(ID 为“testmail”。
希望这是有道理的。非常感谢您的帮助。
【问题讨论】:
-
我发现您的方法过于复杂,无论如何您可以通过单击按钮更改表单操作。
标签: php javascript html email button