Javascript jQueryForm(插件)在提交时使用表单执行操作->$(本)
我在一个页面上有多个表单,我使用它来处理它们,而无需重新加载页面。问题是,我需要一些视觉响应,表单提交是否有效,所以如果有效,我将边框从灰色更改为绿色,如果无效,则更改为红色 好的,这适用于纯jQuery,但不适用于这个插件,因为当我使用Javascript jQueryForm(插件)在提交时使用表单执行操作->$(本),javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,我在一个页面上有多个表单,我使用它来处理它们,而无需重新加载页面。问题是,我需要一些视觉响应,表单提交是否有效,所以如果有效,我将边框从灰色更改为绿色,如果无效,则更改为红色 好的,这适用于纯jQuery,但不适用于这个插件,因为当我使用$(this)时,它指的是函数本身 有人知道怎么做吗 var edit_form = { dataType: 'json', success: function(output) { console.log($(this));
$(this)
时,它指的是函数本身
有人知道怎么做吗
var edit_form = {
dataType: 'json',
success: function(output) {
console.log($(this));
$form = $(this);
$form.css("border-color", "green");
setTimeout(function(){
$form.css("border-color", "#323131");
}, 3000);
},
error: function(output) {
console.log($(this));
$form = $(this);
$form.css("border-color", "red");
setTimeout(function(){
$form.css("border-color", "#323131");
}, 3000);
}
};
$('.twitch-form').ajaxForm(edit_form);
控制台日志返回以下内容:
[Object, constructor: function, init: function, selector: "", jquery: "1.7.2", size: function…]
通常情况下,我会使用$.post
,但我需要能够用这些表单上传图像
谢谢。如果查看(查看success
选项),success方法将表单对象作为第四个参数
成功创建表单后要调用的回调函数 提交。如果提供了“success”回调函数,则会调用该函数 从服务器返回响应后。它通过了 以下论点: 1.)responseText或responseXML值(取决于数据类型选项的值)。 2.)状态文本 3.)xhr(如果使用jQuery<1.4,则使用jQuery包装的表单元素) 4.)jQuery包装的表单元素(如果使用jQuery<1.4,则未定义) 所以
演示:根据文档,以下是创建成功回调的方法:
var options = {
success: showResponse
...
}
function showResponse(responseText, statusText, xhr, $form) {
...
}
阅读API,在其中提供可用选项。。。试试这个
<script>
$(document).ready(function() {
// bind 'myForm' and provide a simple callback function
var options = {
target: '#divToUpdate',
url: 'comment.php',
success: function(){ alert("Success ")},
error:function(){
alert("Error occurd");
}
};
$('#myForm').ajaxForm(options);
});
</script>
<form id="myForm" action="" method="post">
Name: <input type="text" name="name" />
Comment: <textarea name="comment"></textarea>
<input type="submit" value="Submit Comment" />
</form>
$(文档).ready(函数(){
//绑定“myForm”并提供一个简单的回调函数
变量选项={
目标:“#divToUpdate”,
url:'comment.php',
success:function(){alert(“success”)},
错误:函数(){
警报(“错误发生”);
}
};
$('#myForm').ajaxForm(选项);
});
姓名:
评论:
尝试记录输出而不是$(this)@digitaldouble输出=被调用的文件返回的数据,这对我来说是无用的,主要是在出错的情况下。嗯,好的,我仍然不知道如何获取它。该参数的名称是什么,或者我应该怎么做?因为输出是我的文档中被调用的数据。将您的函数(output)更改为函数(output,statusText,xhr,form)@digitaldouble太好了,我刚刚使用了$form。是的,经过编辑的答案效果很好。我应该接受哪个男人?因为你们都提供了正确的答案。欢迎。我在帖子中发布的链接指向文档的那一部分。@digitaldouble是的,我在底部找到了它,我真的错过了那一部分。Ooops:D哦,现在是早上5点,再次感谢你们,现在一切正常:)我接受了阿伦斯的回答,因为他很快就发布了,但真的感谢你们两位。很遗憾,我不能接受两个答案:(
<script>
$(document).ready(function() {
// bind 'myForm' and provide a simple callback function
var options = {
target: '#divToUpdate',
url: 'comment.php',
success: function(){ alert("Success ")},
error:function(){
alert("Error occurd");
}
};
$('#myForm').ajaxForm(options);
});
</script>
<form id="myForm" action="" method="post">
Name: <input type="text" name="name" />
Comment: <textarea name="comment"></textarea>
<input type="submit" value="Submit Comment" />
</form>