Jquery 如何使用即兴对话框包括和提交表单
通过jquery即兴添加表单并将表单提交到PHP页面的正确方式是什么 目前,我正在做:Jquery 如何使用即兴对话框包括和提交表单,jquery,modal-dialog,form-submit,impromptu,Jquery,Modal Dialog,Form Submit,Impromptu,通过jquery即兴添加表单并将表单提交到PHP页面的正确方式是什么 目前,我正在做: <script> var someform = '<form method="post" action="my.php" id="myform"> Enter your name<br /> <input name="name" /><br /> What's your favorite color?<br /> &l
<script>
var someform = '<form method="post" action="my.php" id="myform">
Enter your name<br />
<input name="name" /><br />
What's your favorite color?<br />
<select name="color">
<option>red></option>
<option>blue</option>
</select><br />
Tell us more about that<br />
<textarea name="comments"></textarea>
<input type="hidden" name="submit" />
</form>';
function callback_form(v,m,f){
if(v == 1)
{
$('#myform').submit();
location.reload();
}
else
{
$.prompt.close()
}
}
</script>
var someform='1〕
输入您的姓名
你最喜欢什么颜色?
红色>
蓝色
告诉我们更多关于这方面的信息
';
函数回调形式(v,m,f){
如果(v==1)
{
$('#myform')。提交();
location.reload();
}
其他的
{
$.prompt.close()
}
}
在html中,当我调用它时,表单显示并刷新页面,但不提交
<a href="#" onclick="$.prompt(someform,{ callback: callback_form, buttons: { Cancel: 0, Add: 1 },focus: 1 });">Launch Form</a>
我觉得我犯了一些很容易的错误,但我找不到任何人使用即兴方式包含表单标签的例子。我希望有人能给我指出正确的方向。有谁能帮我找到提示用户输入并使用即兴提交表单的最佳方法吗?也就是说,因为您在提交时正在重新加载页面。如果您提交表单,您的页面将转到“my.php”,因此您不需要“location.reload()”。您应该能够通过ajax提交表单,如下所示:
$.post('my.php',f,function(data,status,xhr){
//do something here
});
我明白了;谢谢你的帮助 显然,我需要将回调更改为提交
$.prompt(someform,{ callback: callback_form
到
$.prompt(某种形式,{submit:callback\u form
)。当我引用提交行为而不是调用函数时,一切都正常工作。s/不需要/不应该有/
如果我删除重新加载行,页面似乎根本不工作。对话框关闭,但页面的行为与我单击提交按钮的行为不同。我想知道是否需要有一个und我使用jquery实际“单击”的显示按钮?更新:如果我放入实际表单并单击该按钮,它将正常提交。因此,$('#myform').submit();action的行为与实际单击submit按钮的行为不同,当时我认为行为是相同的。我找到了答案;感谢您的帮助!显然,我需要将$.prompt(someform,{callback:callback_form)更改为$.prompt(someform,{submit:callback_form)。当我引用提交行为而不是调用函数时,一切都正常工作。好的,你能在上面的表单示例的上下文中重新表述一下吗?对不起,我以前从未使用过$.post…@user882134,这很好,虽然my.php不存在,但它发布了正确的内容: