2015-04-15 34 views
-1

我的項目中有幾個註冊頁面。例如註冊學生信息,註冊信息等頁面。檢查頁面加載時的輸入文本值

在頁面中我想設置按鈕以在符合標準時禁用。這是我的代碼

$(document).ready(function() { 

    if($('#student_id').val().length === 0){ 
     $('#student_update').prop("disabled", true); 
     $('#student_delete').prop("disabled", true); 
    }else{ 
     $('#student_add').prop("disabled", true); 
    } 
}); 

如果學生證是空的意義有什麼更新或刪除我想禁用否則禁用添加按鈕。

學生ID已準備就緒,意味着將價值放入其中的唯一方法是從數據庫中選擇數據。

+1

你得到一個錯誤?問題是什麼? – renakre

+1

你拼錯了'.lenght',它應該是'.length' –

+0

什麼都沒發生沒有錯誤,並且糾正了拼寫,但仍然按鈕被激活或禁用爲假 – Pekka

回答

1
if(!$('#student_id').val()) 

因爲你並不需要,因爲一個空字符串的值爲false檢查長度> 0 在jQuery中。

的可讀性,你可以用:

if($('#student_id').val().length === 0) 

您可以使用這樣的事情:

$(document).ready(function() { 
    disableButton(); 
    $('#student_id').keyup(function(){ 
    disableButton(); 
}); 
}); 

function disableButton(){ 
    if(!$('#student_id').val()){ 
     $('#student_update').prop("disabled", true); 
     $('#student_delete').prop("disabled", true); 
    $('#student_add').prop("disabled", false); 
    }else{ 
     $('#student_add').prop("disabled", true); 
    $('#student_update').prop("disabled", false); 
     $('#student_delete').prop("disabled", false); 
    } 
} 
+0

嘿,你能再次幫助我我試圖在表格重置時觸發相同的代碼,但它不起作用 – Pekka

+0

包含在$(document).ready()中的代碼只會在頁面Document Object Model(DOM)準備好JavaScript時運行要執行的代碼。如果你想每次都運行它,你將需要使用jquery的keyup函數。 –

+0

輸入是隻讀的,正如我在問題中提到的,這就是爲什麼我在處理它時遇到問題 – Pekka

0

試試這個:

if($('#student_id').val()=="") 

或正確拼寫lenght

if($('#student_id').val().length==0)