私がしたいのは、特定の要素のデフォルトの jquery メソッドを変更することです。
たとえば、val()
一部の (すべてではない)select
リストのメソッドを変更したいとします。その後、必要に応じて元に戻します。
私の最初の試みは次のとおりですが、うまくいきません。
$('#list').val = function(){ alert('toto'); };
//and then
$('#list').val() //not work
解決
var old_val = $.fn.val;
$.fn.val = function(value){
//some condition to trigger
if (this.hasClass('someclass')){
//getter
if (value===undefined){
//do something to get the values
return val;
}
//setter
else {
//do something with the value
return this;
}
}
return old_val.apply(this, arguments);
};