在服务器端模型验证通过后,禁用mvc中的提交按钮

disable submit button in mvc after server side model validation passes

本文关键字:mvc 禁用 按钮 提交 模型 服务器端 验证      更新时间:2023-09-26

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

$(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();
    }
});

若我在客户端这样做,那个么值就不会提交给控制器。此外,我希望完成服务器端模型验证然后将其禁用,因为它没有提交两次表单。请引导。

您可以简单地执行此

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