我編程使用jQuery面板,你可以在這裏看到:http://www.taoktalk.com/socialapps/baidu/taozhe/ 我的邏輯是:的jQuery綁定事件
- 當我點擊每個buttonset,輸入元素的defaut值變化;
- 每次在輸入元素中進行焦點時,該值都被清除;
- 如果模糊輸出而不輸入任何內容,默認值被重新設置,但如果輸入一些單詞,則單詞是值。
方法「inputWithDefValue」實現邏輯2和3,但邏輯1,當我點擊按鈕組中,evnet「焦點」和「模糊」被遞增地結合,因此,「DEFVAL」變量是不正確的。 如何解決此問題,謝謝。
對於調試,我使用'alert(defVal);'在重點evnet。
的javascrip代碼:
$(function() {
$("#tabs").tabs();
var selectedTab = ''
$("#tabs").bind("tabsselect", function(event, ui) {
//selectedTab = ui.panel.id;
});
$("#goods").buttonset();
$("#shop").buttonset();
var defaultInputVal = '';
$('input[type=radio]').bind('click', function(){
switch (this.id){
case 'goods-url':
defaultInputVal = '輸入寶貝網址';
break;
case 'goods-name':
defaultInputVal = '輸入寶貝名稱';
break;
case 'goods-id':
defaultInputVal = '輸入寶貝編號';
break;
case 'shop-url':
defaultInputVal = '輸入店鋪網址';
break;
case 'shop-nick':
defaultInputVal = '輸入店鋪名稱';
break;
}
$('input.input-search').val(defaultInputVal); //set default value of input.input-search element
$('input.input-search').inputWithDefValue(defaultInputVal); //excute inputWithDefValue method every time after click
});
//excute inputWithDefValue method without click buttonset
$('input#input-goods').inputWithDefValue('輸入寶貝網址');
$('input#input-shop').inputWithDefValue('輸入店鋪網址');
});
$.fn.extend({
inputWithDefValue: function(defVal){
this.bind('focus', function(){
alert(defVal); //for debug purpose
if ($(this).val() == defVal) {
$(this).val('').css({
'color': 'black'
});
}
});
this.bind('blur', function(){
if ($(this).val() == '') {
$(this).val(defVal).css({
'color': '#969696'
});
}
});
}
});
謝謝你的男人。如果方向是錯誤的,努力是徒勞的。我會嘗試你的方向。 – hon 2011-05-27 01:34:31