Ajax Jquery function params
Ajax Jquery function params
我有这个代码可以工作,但我想使更通用。
此代码使用 Ajax 提交表单,并获取以下 json:
{"message": "Verifique todos los campos","success": "false"}
取决于成功与否 在我的 #MESSAGE-DIV 中添加一个类,所以我想传递给功能
#MESSAGE-DIV,改为哈尔编码
var frm = $('#loginForm');
frm.submit(function () {
$.ajax({
dataType: "json",
type: frm.attr('method'),
url: frm.attr('action'),
data: frm.serialize(),
success: function (data) {
if(data['success'] == "true") {
alerta = "alert alert-success";
$("#MESSAGE-DIV" ).removeClass( "alert alert-error" )
$("#MESSAGE-DIV" ).html(data['message']).addClass(alerta);
window.setTimeout(function() {
window.location.href = '/stockrecetas/';
}, 3000);
}
else {
alerta = "alert alert-error";
$("#MESSAGE-DIV" ).removeClass( "alert alert-success" )
$("#MESSAGE-DIV" ).html(data['message']).addClass(alerta);
}
},
error: function(data) {
}
});
return false;
});
这是我的 HTML 表单:
<form id="loginForm" method="POST" action="login"><input type="hidden" name="csrfmiddlewaretoken" value="2EDW4oyrAPToDObfiaXQO95oFOGM9H5B">
<div id="MESSAGE-DIV"></div>
<label for="id_username">Username:</label><input id="id_username" maxlength="30" name="username" type="text">
<label for="id_password">Password:</label><input id="id_password" name="password" type="password">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
<button class="btn btn-primary" type="submit" value="Login">Log In</button>
</form>
做一个很好的函数,它接受作为参数传递的选择器:
function submit(formEl, messageEl) {
$(formEl).submit(function() {
// ...
$(messageEl).removeClass("alert alert-success");
// ...
});
});
(表格El只是为了进一步概括这一点)
就像James Lai说的那样,我做了一个函数witch接收参数并发送到de .ajax()
溶液:
function genericForm (form, messagediv) {
var frm = form;
frm.submit( function () {
$.ajax({
dataType: "json",
type: frm.attr('method'),
url: frm.attr('action'),
data: frm.serialize(),
success: function (data) {
if(data['success'] == "true") {
alerta = "alert alert-success";
$(messagediv).removeClass( "alert alert-error" )
$(messagediv).html(data['message']).addClass(alerta);
window.setTimeout(function() {
window.location.href = '/stockrecetas/';
}, 3000);
}
else {
alerta = "alert alert-error";
$(messagediv).removeClass( "alert alert-success" )
$(messagediv).html(data['message']).addClass(alerta);
}
},
error: function(data) {
}
});
return false;
});
};
所以我以这种方式调用该函数:
var frm1 = $('#registerForm');
frm1.submit(genericForm(frm1, "#MESSAGE-DIV1"));
相关文章:
- 直接在函数声明上使用function.prototype.bind
- jQuery:.click(function(){(element),collapse('show',f
- 如果连接类型为none,则Javascript Function Only警报
- onLoad function phonegap android
- reducers在redux中得到Function not Object,what'it’他错了
- WIll window.addEventListener(“加载”,function(),false);等待浏览器自动填
- Node.js req.params.locationid not grabbing ID
- $(document).ready和jQuery(function($)不工作;jQuery已定义,但脚本尚未定义;t进
- Javascript onunload function
- 与params的onclick调用
- 在init function()中调用getElementById(“..”),而不是想用它做点什么的函数
- spyOn:应为间谍,但得到了Function
- React Router,在params之后嵌套路由
- (typeof variable === “function”) 和 jQuery.isFunction() 有什么区别
- this内部的值返回this.each(function(){})
- 如何在JavaScript中创建类似于something.function()的函数
- 如何通过 Function.prototype.apply() 更改调用函数的参数
- 控制台中的“function floor(){[本机代码]}”是什么
- Ajax Jquery function params
- 调用foo(function(params){..})的含义是什么?