2013-10-07 50 views
0

我有一個表,該表與jQuery的數據表結合。有3個複選框中的每個表/格行向BookModifyView。我的目標是在保存網格/表格時檢查驗證。如果任何行的所有3個複選框都未選中,那麼我想顯示驗證消息(即檢查至少一個複選框是必需的)。要檢查確認我寫的代碼如下─

function Validate() { 
    $(grid1.fnGetData()).each(function() { 
     if ($(this).has('true')) { 
      return true; 
     } 
    }); 
    return false; 
} 

$(this)有這樣的價值觀 -

Book: false 
ID: 945 
Modify: false 
Name: "ADGAS" 
View: false 

我怎樣才能重新編寫代碼,以便每當BookModifyView具有價值false

PS:可以有與所有未選中或混合

+2

請不要在您的問題中添加不相關的標籤。 –

回答

0

指出,這工作對我很好 -

function Validate() { 
var allOk = true; 
$(grid1).find("tbody tr").each(function() { 
    var row = $(this); 
    if (row.find($(':checkbox:not(:checked)')).length == 3) { 
     allOk = false; 
     return allOk; 
    } 
}); 
return allOk; 

}

0
function Validate() { 
    var allOk = true; 

    $(grid1.fnGetData()).each(function() { 
     var row = $(this); 
     if (!row.book && !row.Modify && !row.View) 
     { 
      allOk = false;  
     } 

    }); 
    return alOk; // Make `Validate` return true only if all rows validate. 
} 
0123多行
+0

'如果(!!!row.Book && row.Modify && row.View)''是即使TRUE'時'查看:TRUE'和'書:FALSE'和'修改:FALSE' – Sandy

+0

這是不正確的(無雙關意圖)。請閱讀'&&'(布爾'和')和'||'(布爾'或')之間的區別。 – GolezTrol

+0

'$(grid1.fnGetData())。每個(函數()'犯規retunr作爲行動態添加,最後添加的行。所以我用'$(GRID1).find( 「TBODY TR」)。每個代替它(功能()'不執行代碼。任何解決方案? – Sandy

0
if (!($(this).Book) && !($(this).Modify) && !($(this).View)) { 
    alert("Validation error"); 
} 

這個假設$(這)是一樣的東西,你說,這是不可能的,因爲通過@undefined

+0

,對於網格中的每個失效行了,還是驗證功能的一個消息返回沒有什麼用處。你指的是刪除,可能不正確的評論。 – GolezTrol

相關問題