2015-06-22 30 views
0

我对控制器中的java脚本和模型状态验证进行了客户端验证,与文件附件相关。 我想在点击后禁用我的保存(提交)按钮。 我已经检查了与此相关的堆栈溢出链接给出的所有解决方案。在服务器端模型验证通过后,在mvc中禁用提交按钮

$(document).ready(function() { 
    $(".submitBtn").click(function() { 
     $('input[type="submit"]').prop('disabled',true); 
     $('#yourFormId').submit(); 
    }); 
}); 

MVC

public actionresult Save(LatestUpdatemaster objUpdate,HttppostedFileBase filename){ 
    string strResult=""; 
    strResult = Utility.UploadUpdateDocument(filename,foldername); 
    if(strResult != "1"){ 
     ModelState.AddModelError("FileName",strResult); 
    } 
    else{ 
     //Save code... 
    } 
} 

也试过这个,

$('#form').one('submit',function(){ $(this).find('input[type="submit"]).attr('onclick','his.style.opacity="0.6";retu‌​rn false;'); 

代码创建按钮

<input class="btn btn-primary" type="submit" value="Save" name="Save" id="Save" /> 

客户端 - 查看

$('#Save').click(function(e){ 
    Duplicatevalidation(); 
    if($'#Updatename').text().trim() == ''){ 
     e.preventDefault(); 
    } 
}); 

如果我这样做,客户端则值不会提交给控制器。 另外我想要服务器端模型验证完成 然后使其禁用两次不提交表单。 请指导。

+0

有很多选择正确维护它/禁用的形式在客户端提交的两倍! –

+0

我已经尝试过所有,它也可以工作,但表单值不会提交给控制器。 – Priya

+0

然后只是发布你试过的东西! ('#form')。one('submit',function(){$(this).find('input [type =“')'这个函数可以让我们知道你正在面对什么类型的问题。 –

回答

0

你可以简单地这样做

$(document).ready(function() { 
    $(".submitBtn").click(function() { 
     $(this).prop('disabled',true); 
     $('#yourFormId').submit(); 
     }); 
    }); 
+0

它不工作,它禁用按钮,不会触发服务器端验证。 – Priya

+0

您是否看到任何错误的控制台? – Abhinav

+0

也发布您的HTML表格 – Abhinav