gpt4 book ai didi

php - 如何在不刷新页面的情况下自动提交此表单?

转载 作者:行者123 更新时间:2023-12-01 03:24:19 26 4
gpt4 key购买 nike

这一切都在一个 php 文件中

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html>
<head>
<title>JQuery Form Example</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script><!--need at least one instance of jquery-->
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script><!--ajax to use with jquery-->
<script type="text/javascript">
$(document).ready(function(){//when the document has loaded
$("#myform").validate({//Q: what is validate?, myform gets validated
debug: false,
rules: {
name: "required",//name and email are the only things passed
email: {
required: true,
email: true//I guess this defines the input as an email
}
},
messages: {//at what point is this message displayed?
name: "Please let us know who you are.",
email: "A valid email will help us get in touch with you.",
},
submitHandler: function(form) {//submit the form
// do other stuff for a valid form
$.post('process.php', $("#myform").serialize(), function(data) {//Q:what is serialization? myform gets serialized and assigned an action
$('#results').html(data);//what is this?
});
}
});
});

window.onload=function( )
{
}


</script>
<style>
label.error { width: 250px; display: inline; color: red;}
</style>
</head>
<body>

<form name="myform" id="myform" action="" method="POST">
<!-- The Name form field -->
<label for="name" id="name_label">Name</label>
<input type="text" name="name" id="name" size="30" value="Charlie"/>
<br>
<!-- The Email form field -->
<label for="email" id="email_label">Email</label>
<input type="text" name="email" id="email" size="30" value="obesemuleaccount@yahoo.com"/>
<br>
<!-- The Submit button -->
<input type="submit" name="submit" value="Submit">
</form>
<!-- We will output the results from process.php here -->
<div id="results"><div>
</body>
</html>

<!--ok, so I want to first try some stuff out to get a feel for how the form works-->
<!--upload the form to the site somewhere-->
<!--access and play around with it-->
<!--then figure out how to submit to multiple php forms-->

所以我使用 Jquery 和 Ajax,并且需要自动提交表单。

我尝试过使用 document.myform.submit 之类的东西,但这似乎不起作用。当我不使用 ajax 时它可以工作,但这会导致页面刷新到 php 文件的目标。

我想我只是缺少一些语法。我进行了搜索,发现了一些类似这样的主题: Ajax auto form submit

但我更像是一个业余设计师,所以我不太明白他们在说什么。我不会把修复我的代码的任务交给其他人,但我很确定更改很小,而且我已经花了一段时间试图解决这个问题。非常感谢任何提供帮助的人!请非常详细地说明您的指示,事实上,如果您可以直接在代码本身中提供修复程序,那就更好了。

编辑:请不要对我的评论笑得太厉害,我现在更好地理解了代码(经过多次谷歌搜索),这是几个小时前的修订。

双重编辑:这是一个名为 process.php 的示例 php 脚本,您需要对其进行编辑以查看自动提交是否有效。如上所述,您可以使用 MySQL 数据库来完成此操作。

print "Form submitted successfully: <br>Your name is <b>".$_POST['name']."</b> and your email is <b>".$_POST['email']."</b><br>";

最佳答案

只需付出最小的努力,我认为这会起作用

<script>

$(document).ready(function(){
submit_form();
});

function submit_form () {
$.post('process.php', $("#myform").serialize(), function(data) {
$('#results').html(data);
});
}

</script>

问:什么是验证?,myform 得到验证

A:使用validate方法,可以确保表单提交前字段中的数据有效。

问:什么时候显示此消息?

A:当验证未通过时。例如,您将名称指定为“必需”,并且电子邮件必须是前面几行的“电子邮件”。

问:什么是序列化? myform 被序列化并分配一个操作

A:Serialize读取表单中所有字段的值并构造适合GET和POST的查询字符串。在您的情况下,序列化后,POST 数据将为 name=Charlie&email=obesemuleaccount@yahoo.com"

问:这是什么?

A:“数据”作为参数传递给回调函数。在这种情况下,process.php的输出将被写入#('#results')的innerHTML

关于php - 如何在不刷新页面的情况下自动提交此表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6897351/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com