如果我在项目的某个页面中有这样的内容:
<div class="dialog" title="Basic dialog" id="popup">
<div class="text"> </div>
</div>
<c:url value="/${entity}/cadastra" var="cadastra"/>
<form:form method="POST" action="${cadastra}" class="form" enctype="multipart/form-data">
...
<button type="submit" class="btn btn-lg btn-primary">cadastrar</button>
</form:form>
并且提交事件由以下代码处理:
$('form.form').ajaxForm(function(data) {
if(data == '')
$('#yes').css('display', 'block');
else
$('#not').css('display', 'block');
$('<<element>>').each(function(){
this.reset();
});
});
任何人都知道&lt;&gt;的价值应该是多少?如果我只想重置我提交的表单中的字段,我可以在div.dialog
内有一个同一类的新表单?
如果我使用form.form
,则会重置两个表单,如果我使用this
,则会收到错误消息。有什么想法可以解决这个问题吗?
答案 0 :(得分:3)
每当您不确定对插件中元素的访问权限时,您始终可以在each
循环内单独初始化它们。
在each
this
内将是元素实例,您可以将其存储为变量以传入插件。
$('form.form').each(function () {
/* assign "this" to variable that can be used inside plugin */
var form = this;
$(form).ajaxForm(function (data) {
if (data == '') {
$('#yes').css('display', 'block');
} else {
$('#not').css('display', 'block');
}
form.reset();
});
});