2012-10-01 68 views
2

HTML通過的onblur觸發如何檢查元素具有與jQuery

<input type="text" id="trainingFee" name ="training Fee" class="number error" value="" onblur="callMe()"> 

jQuery的

function callMe(){ 
     if($this.id).hasClass('error')){ 
     alert("has error class");  
} 

}

一定的階級,但是這是行不通的。我究竟做錯了什麼?

回答

3

您正在嘗試使用上下文來訪問該元素的電流id .. 你需要將它傳遞給函數爲了做到這一點

的onblur =「呼我(這)」

function callMe(elem){ 
     if($(elem).hasClass('error')){ 
     alert("has error class");  
} 
} 

否則,你可以試試這個方法

FIDDLE

$(function() { 
    $('#trainingFee').on('blur', function() { 
     if ($(this).hasClass('error')) { 
      alert("has error class"); 
     } 
    }); 
});​ 

<input type="text" id="trainingFee" name ="training Fee" class="number error" value="" /> 

0

你可以試試:

if ($(this).is('.error')) { 
    ... 
} 
2

您應該刪除從HTML的onblur屬性,只是做這一切與jQuery。

$('#trainingFee').blur(function() { 
    if ($(this).hasClass('error')) { 
     alert('has error class'); 
    } 
}​);​ 
相關問題