0

我正在創建一個ASP.NET MVC 5應用程序。該應用程序已經使用隨MVC應用程序提供的jQuery Validate插件。目前,當點擊「submit」按鈕時,觸發jQuery Validate,如果有效,表單將被驗證並提交。jQuery驗證:添加事件提交按鈕單擊ASP.NET MVC 5應用程序

我需要添加更多的事件到提交​​按鈕點擊,我需要確保新的事件不會覆蓋jQuery Validate插件。本來我想這個代碼,而jQuery驗證:

$('#submitButton').click(function(){ 
    // JavaScript event 
// another JavaScript event 
}); 

但是,當我測試此代碼,它徹底推翻了jQuery驗證插件和我所有的前端驗證消失。我想知道如果我以某種方式將jQuery Validate包含到此代碼中,它將允許插件和新提交按鈕事件共存。

我想象的代碼會是這個樣子:

$('#submitButton').click(function(){ 
    //Initialize jQuery Validate plug-in 
    // JavaScript event that happens if form is valid 
// another JavaScript event that happens if form is valid 
}); 

我如何調用已經被ASP.NET MVC架構中設立jQuery驗證?根本不需要改變插件(除非我的行動計劃是錯誤的);我只需要將事件添加到提交按鈕單擊。

+0

因此,目前的jQuery驗證碼*作品*,正確嗎?你只是試圖添加一個點擊事件處理程序的按鈕?那麼,你展示的確實是一個按鈕的點擊事件處理程序。這是不是以某種方式工作?我不清楚你卡在哪裏。 – David

+0

嗨大衛,當我試圖創建此jQuery代碼沒有初始化jQuery驗證插件,應用程序停止驗證。我認爲新的代碼覆蓋了插件。我想知道如果我在上面的代碼中調用插件,它將工作。但是,我不確定那些代碼是什麼樣的。 – cryan

+0

「初始化jQuery驗證插件」是什麼意思?這不是在頁面代碼的其他地方「初始化」嗎?爲什麼需要重新初始化?只需添加一個點擊處理程序不會覆蓋任何內容但是,如果您有其他代碼以某種方式導致問題,我們無法根據所提供的信息知道。 – David

回答

0

大..我想你正試圖提交使用

@using (Ajax.BeginForm.. or @using (Html.BeginForm(.. 

這兩個包含一個函數OnBegin這是創建在形式,可以調用,將表單之前觸發任何功能提交

@using (Ajax.BeginForm("SaveInformation_Basic", "..//ARCSL1", null, new AjaxOptions { HttpMethod = "POST", OnSuccess = "done._afterEntry", OnBegin = "return Prevalidateform();" }, new { @id = "entryForm" })) 


function Prevalidateform() { 
    // do your thing here 
} 
0

您可以在按鈕事件進行驗證

$('#submitButton').click(function(){ 
     var $form = $('form'); 
     if($form.valid()){ 
     // JavaScript event that happens if form is valid 
     } 
     else{ // another JavaScript event that happens if form is valid 
     } 
    }); 
相關問題