【问题标题】:disable submit button in mvc after server side model validation passes服务器端模型验证通过后禁用 mvc 中的提交按钮
【发布时间】:2015-06-22 10:04:32
【问题描述】:

我在控制器中有 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();
    }
});

如果我在客户端这样做,那么值将不会提交给控制器。 我也想完成服务器端模型验证 然后禁用两次不提交表单。 请指导。

【问题讨论】:

  • 有很多选项可以正确维护它/在客户端禁用表单提交两次!!
  • 我都试过了,它也可以,但是表单值没有提交给控制器。
  • 然后发布您尝试过的内容!以便我们了解您面临的问题类型。
  • $('#form').one('submit',function(){ $(this).find('input[type="submit"]).attr('onclick', 'his.style.opacity="0.6";return false;');
  • 不是这样的!!编辑你的问题!!添加相关html+js+controller方法!!

标签: javascript jquery model-view-controller


【解决方案1】:

你可以这样做

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

【讨论】:

  • 它不工作,它禁用按钮并且不会触发服务器端验证。
  • 同时发布您的 HTML 表单
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-03
  • 2013-07-10
  • 1970-01-01
相关资源
最近更新 更多