我的jsp中有几个具有相同UI的表单,但id不同。
我想编辑一个特定的表单,并通过Jquery脚本提交这些表单元素。
我的js文件如下:
$("form").submit(function(event){
var id= $(this).attr("id");
var name="#"+id;
alert(name);
var dis = $(name).attr("disabled");
if (dis==true){
alert("disabled");
event.preventView()
} else{
alert("not disabled");
//submit the form
}
我将 dis 视为未定义。 所以我每次条件都是假的。 我的要求是
如果所有输入字段都是禁用状态,则不要提交表单
如果所有输入字段均为启用状态,则提交表单
我怎样才能做到这一点。我哪里错了?
你能建议吗。
答案 0 :(得分:1)
$("form").submit(function (event) {
if ($(this).find('input:not(:disabled)').length==0) {
event.preventDefault()
}
})
答案 1 :(得分:1)
您可以根据自己的要求尝试以下功能。
function chkvalidform(formID){
var flag = '';
formID = '#'+formID;
$( ':input[required]:visible,select[required]:visible option[value]:selected', formID ).each( function () {
if ( this.value.trim() !== '' ) {
if($(formID+' '+'select[required].length > 0') && $(formID+' '+'select[required] option[value]:selected').val() == ''){
flag = 'false';
}
else {
flag = 'true';
}
}
else {
flag = 'false';
}
});
if(flag == 'true'){
if (!$(formID).valid()) {
$(formID+' '+'input[type="submit"]').attr('disabled',true);
$(formID+' '+'input[type="submit"]').addClass('greySubmit');
$(formID+' '+'input[type="submit"]').removeClass('themeInBgColor');
} else {
$(formID+' '+'input[type="submit"]').attr('disabled',false);
$(formID+' '+'input[type="submit"]').removeClass('greySubmit');
$(formID+' '+'input[type="submit"]').addClass('themeInBgColor');
}
}
else if(flag == 'false'){
$(formID+' '+'input[type="submit"]').attr('disabled',true);
$(formID+' '+'input[type="submit"]').addClass('greySubmit');
$(formID+' '+'input[type="submit"]').removeClass('themeInBgColor');
}
}