Javascript jqueryajax表单没有';行不通
我尝试了许多方法来创建一个简单的jQueryAjax表单,但不知道为什么它不提交和/或返回通知 这是我的密码: JavascriptJavascript jqueryajax表单没有';行不通,javascript,php,jquery,ajax,forms,Javascript,Php,Jquery,Ajax,Forms,我尝试了许多方法来创建一个简单的jQueryAjax表单,但不知道为什么它不提交和/或返回通知 这是我的密码: Javascript ... <script type="text/javascript" src="assets/js/jquery1.11/jquery-1.11.0.min.js"></script> ... $('#form_signup').submit(function(event) { event.preventDefault();
...
<script type="text/javascript" src="assets/js/jquery1.11/jquery-1.11.0.min.js"></script>
...
$('#form_signup').submit(function(event) {
event.preventDefault();
$.ajax({
type: 'POST',
url: 'signup.php',
data: $(this).serialize(),
dataType: 'json',
success: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
},
error: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
}
});
});
。。。
...
$('#表单_注册')。提交(函数(事件){
event.preventDefault();
$.ajax({
键入:“POST”,
url:'signup.php',
数据:$(this).serialize(),
数据类型:“json”,
成功:功能(数据){
控制台日志(数据);
$('#form_signup_text').html(data.msg);
},
错误:函数(数据){
控制台日志(数据);
$('#form_signup_text').html(data.msg);
}
});
});
HTML
<form id="form_signup" name="form_signup" method="POST">
<div>
<input type="email" id="inputEmail1" name="inputEmail1" placeholder="your@email.com">
</div>
<div>
<a type="submit">Sign up!</a>
</div>
<div id="form_signup_text">
<!-- A fantastic notice will be placed here =D -->
</div>
</form>
注册
PHP
php代码需要回显而不是返回 就这样,
echo json_encode($return)代码>
此外,表单需要一个提交按钮-
标记上的type=“submit”
不会触发浏览器处理
的功能
最后,您需要确保在正确的时间加载特殊的submit处理程序——如果它包含在页面底部、页脚之前,那么就可以了。但是,您可以通过将其包装为
$(document).ready(function(){
//[...]
});
php代码需要回显而不是返回
就这样,
echo json_encode($return)代码>
此外,表单需要一个提交按钮-
标记上的type=“submit”
不会触发浏览器处理
的功能
最后,您需要确保在正确的时间加载特殊的submit处理程序——如果它包含在页面底部、页脚之前,那么就可以了。但是,您可以通过将其包装为
$(document).ready(function(){
//[...]
});
php代码需要回显而不是返回
就这样,
echo json_encode($return)代码>
此外,表单需要一个提交按钮-
标记上的type=“submit”
不会触发浏览器处理
的功能
最后,您需要确保在正确的时间加载特殊的submit处理程序——如果它包含在页面底部、页脚之前,那么就可以了。但是,您可以通过将其包装为
$(document).ready(function(){
//[...]
});
php代码需要回显而不是返回
就这样,
echo json_encode($return)代码>
此外,表单需要一个提交按钮-
标记上的type=“submit”
不会触发浏览器处理
的功能
最后,您需要确保在正确的时间加载特殊的submit处理程序——如果它包含在页面底部、页脚之前,那么就可以了。但是,您可以通过将其包装为
$(document).ready(function(){
//[...]
});
您的atype=“submit”
不需要作为输入吗?或者按钮您的atype=“submit”
不需要作为输入吗?或者按钮您的atype=“submit”
不需要作为输入吗?或者按钮您的atype=“submit”
不需要作为输入吗?或者“ajax”函数中的按钮(此)不是表单。
所以,试试看:
$('#form_signup').submit(function(event) {
event.preventDefault();
var $this = $(this);
$.ajax({
type: 'POST',
url: 'signup.php',
data: $this.serialize(),
dataType: 'json',
success: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
},
error: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
}
});
});
我承认我没有检查代码的其余部分,我很确定这就是问题所在
当然,如果问题仍然存在,只需“f12”并检查控制台和网络中的服务器请求和头,确保所有参数都存在
希望对$(此)中的“ajax”函数不是表单。
所以,试试看:
$('#form_signup').submit(function(event) {
event.preventDefault();
var $this = $(this);
$.ajax({
type: 'POST',
url: 'signup.php',
data: $this.serialize(),
dataType: 'json',
success: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
},
error: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
}
});
});
我承认我没有检查代码的其余部分,我很确定这就是问题所在
当然,如果问题仍然存在,只需“f12”并检查控制台和网络中的服务器请求和头,确保所有参数都存在
希望对$(此)中的“ajax”函数不是表单。
所以,试试看:
$('#form_signup').submit(function(event) {
event.preventDefault();
var $this = $(this);
$.ajax({
type: 'POST',
url: 'signup.php',
data: $this.serialize(),
dataType: 'json',
success: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
},
error: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
}
});
});
我承认我没有检查代码的其余部分,我很确定这就是问题所在
当然,如果问题仍然存在,只需“f12”并检查控制台和网络中的服务器请求和头,确保所有参数都存在
希望对$(此)中的“ajax”函数不是表单。
所以,试试看:
$('#form_signup').submit(function(event) {
event.preventDefault();
var $this = $(this);
$.ajax({
type: 'POST',
url: 'signup.php',
data: $this.serialize(),
dataType: 'json',
success: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
},
error: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
}
});
});
我承认我没有检查代码的其余部分,我很确定这就是问题所在
当然,如果问题仍然存在,只需“f12”并检查控制台和网络中的服务器请求和头,确保所有参数都存在
希望有帮助问题在你的表格中
<form id="form_signup" name="form_signup" method="POST">
<div>
<input type="email" id="inputEmail1" name="inputEmail1" placeholder="your@email.com">
</div>
<div>
<input type="submit" name="submit" value="Submit">
</div>
<div id="form_signup_text">
<!-- A fantastic notice will be placed here =D -->
</div>
</form>
问题出在你的表格上
<form id="form_signup" name="form_signup" method="POST">
<div>
<input type="email" id="inputEmail1" name="inputEmail1" placeholder="your@email.com">
</div>
<div>
<input type="submit" name="submit" value="Submit">
</div>
<div id="form_signup_text">
<!-- A fantastic notice will be placed here =D -->
</div>
</form>
问题出在你的表格上
<form id="form_signup" name="form_signup" method="POST">
<div>
<input type="email" id="inputEmail1" name="inputEmail1" placeholder="your@email.com">
</div>
<div>
<input type="submit" name="submit" value="Submit">
</div>
<div id="form_signup_text">
<!-- A fantastic notice will be placed here =D -->
</div>
</form>
问题出在你的表格上
<form id="form_signup" name="form_signup" method="POST">
<div>
<input type="email" id="inputEmail1" name="inputEmail1" placeholder="your@email.com">
</div>
<div>
<input type="submit" name="submit" value="Submit">
</div>
<div id="form_signup_text">
<!-- A fantastic notice will be placed here =D -->
</div>
</form>
你需要做三件事
首先,将jQuery代码包装在$(document).ready()函数中
<script type="text/javascript">
$(document).ready(function()
{
$('#form_signup').submit(function(event) {
event.preventDefault();
$.ajax({
type: 'POST',
url: 'signup.php',
data: $(this).serialize(),
dataType: 'json',
success: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
},
error: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
}
});
});
});
</script>
第三个,回显
结果,因为您正在使用AJAX提交表单返回
不会有任何效果
<?php
$our_mail = "our@email.com";
$subject = "Wohoo! A new signup!";
$email = $_POST['inputEmail1'];
$return = array();
$return['msg'] = 'Thank you!';
$return['error'] = false;
if(preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/", $email)){
$message = "Yesss!! We receive a new signup!
E-mail: $email
";
mail($our_mail, $subject, $message);
}
else {
$return['error'] = true;
$return['msg'] .= 'Something is wrong... snifff...';
}
echo json_encode($return);exit;
你需要做三件事
首先,将jQuery代码包装在$(document).ready()函数中
<script type="text/javascript">
$(document).ready(function()
{
$('#form_signup').submit(function(event) {
event.preventDefault();
$.ajax({
type: 'POST',
url: 'signup.php',
data: $(this).serialize(),
dataType: 'json',
success: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
},
error: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
}
});
});
});
</script>
第三个,回显
结果,因为您正在使用AJAX提交表单返回
不会有任何效果
<?php
$our_mail = "our@email.com";
$subject = "Wohoo! A new signup!";
$email = $_POST['inputEmail1'];
$return = array();
$return['msg'] = 'Thank you!';
$return['error'] = false;
if(preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/", $email)){
$message = "Yesss!! We receive a new signup!
E-mail: $email
";
mail($our_mail, $subject, $message);
}
else {
$return['error'] = true;
$return['msg'] .= 'Something is wrong... snifff...';
}
echo json_encode($return);exit;
你需要做三件事
首先,将jQuery代码包装在$(document).ready()函数中
<script type="text/javascript">
$(document).ready(function()
{
$('#form_signup').submit(function(event) {
event.preventDefault();
$.ajax({
type: 'POST',
url: 'signup.php',
data: $(this).serialize(),
dataType: 'json',
success: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
},
error: function (data) {
console.log(data);
$('#form_signup_text').html(data.msg);
}
});
});
});
</script>