Ajax在JQuery表单插件中不起作用
Ajax not working in JQuery form plugin
我正在用ajax实现Jquery表单插件,以便将我的表单插入数据库。验证工作正常,但ajax调用没有收到任何响应数据。也许,我不知道该怎么做。通过指导使用此插件的真实方式来帮助我。谢谢
JS_文件
$(document).ready(function() {
$('#signup_form').formValidation({
feedbackIcons: {
valid: 'glyphicon glyphicon-ok',
invalid: 'glyphicon glyphicon-remove',
validating: 'glyphicon glyphicon-refresh'
},
fields: {
// Here i have defined some rules
}
})
.on('success.form.bv', function(e) {
var firstName = $('.name').val();
var email = $('.email').val();
var password = $('.password').val();
e.preventDefault();
var $form = $(e.target);
$form.ajaxSubmit({
// You can change the url option to desired target
url: $form.attr('form_process.php'),
type: 'POST',
data:{'FirstName':firstName,'Email':email,'Password':password},
success: function(responseText) {
alert(responseText);
}
});
});
});
form_process.php
<?php
if(isset($_POST['FirstName']) && isset($_POST['Email']) && isset($_POST['Password'])
&& isset($_POST['City']) && isset($_POST['Country']))
{
echo $firstName = $_POST['FirstName'];
echo $em = $_POST['Email'];
echo $ftName = $_POST['Password'];
echo $ame = $_POST['City'];
echo $firame = $_POST['Country'];
}
您没有从ajax传递城市和国家,但您仍然在尝试获取这些字段的值,甚至您还在php中设置了条件,即如果FirstName、Email、Password、City、Country都已设置,则仅在条件为的情况下进入。
因此,有2种解决方案可用:
1) 从id条件中删除城市和国家,并点尝试获取
if(isset($_POST['FirstName']) && isset($_POST['Email']) && isset($_POST['Password']))
{
echo $firstName = $_POST['FirstName'];
echo $em = $_POST['Email'];
echo $ftName = $_POST['Password'];
}
2) 从ajax请求传递城市和国家
$(document).ready(function() {
$('#signup_form').formValidation({
feedbackIcons: {
valid: 'glyphicon glyphicon-ok',
invalid: 'glyphicon glyphicon-remove',
validating: 'glyphicon glyphicon-refresh'
},
fields: {
// Here i have defined some rules
}
})
.on('success.form.bv', function(e) {
var firstName = $('.name').val();
var email = $('.email').val();
var password = $('.password').val();
var city = $(".city").val();
var state = $(".state").val();
e.preventDefault();
var $form = $(e.target);
$form.ajaxSubmit({
// You can change the url option to desired target
url: $form.attr('form_process.php'),
type: 'POST',
data:{'FirstName':firstName,'Email':email,'Password':password,'City':city,'State':state},
success: function(responseText) {
alert(responseText);
}
});
});
});
我相信错误就在您设置url
:的地方
url: $form.attr('form_process.php'),
您是说表单具有包含url的属性form_process.php
。你可能是这个意思:
url: $form.attr('action'),
其他修复程序:
- 订阅表单提交事件并阻止默认操作:
$('#signup_form').submit(函数(e){e.preventDefault();});
尝试在提交发生之前设置ajaxSubmit-意味着将代码从事件
success.form.bv
:上移$('#signup_form').ajaxSubmit({ // You can change the url option to desired target url: $form.attr('form_process.php'), type: 'POST', data:{'FirstName':firstName,'Email':email,'Password':password}, success: function(responseText) { alert(responseText); } });
- 您可能以错误的方式使用插件,使表单首先在没有ajax的情况下工作,然后使用以下示例执行ajaxhttp://malsup.com/jquery/form/#ajaxForm来自插件网站
相关文章:
- Phonegap 3.7.0手电筒插件没有'不起作用
- Ajax在JQuery表单插件中不起作用
- HtmlBox(jquery插件)在ajax调用中不起作用
- 使用DateTimePicker插件的JQuery不起作用
- jquery中DataTables插件中的排序不起作用
- jquery ias插件不适用于我的网站,加载更多项目不起作用
- Cordova插件在使用Framework7时不起作用
- 当我动态创建元素时,选择的插件不起作用
- 除非连接插件,否则 jQuery 代码不起作用
- jQuery基本插件不起作用
- 修复Angular数据表中的头插件不起作用
- jquery在动态表单输入上验证插件不起作用
- 简单的Javascript在Wordpress/WooCommerce插件中不起作用
- Ckeditor插件功能在使用setData(“hai”)之后不起作用;
- Angular UI日期插件:选择时不起作用
- 唤醒程序插件的PhoneGap构建代码没有'不起作用
- jQuery验证插件停止表单提交,提交按钮获胜'不起作用
- jQuery插件不起作用
- Rails-jQuery地理编码和Places自动完成插件不起作用
- jQuery Banner Rotator插件中的延迟设置不起作用