2015-06-22 28 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