2011-07-11 72 views
0

我正在使用jQueryUI的自動完成小部件從MySQL數據庫中檢索主題名稱。當用戶從自動完成列表中選擇一個主題時,我想將該主題附加到#subjects_container,並用fadeIn顯示它。我的問題似乎與語法,雖然我一直無法看到我的錯誤。fadeIn appendTo與ui.item.value

ui.item.value確實包含了我要追加

功能,檢索值是什麼:

function autocompletejq() { 
$("#autocomplete").autocomplete({ 
    source: "autocomplete.php", 
    minLength: 1, 
    delay: 0, 
    select: function(event, ui) { 
     alert(ui.item.value); 
     $("<input class=\"added_chkboxes\" type=\"checkbox\" checked=\"checked\" />" + ui.item.value + "").appendTo("#subjects_container"); 
    } 
}); 

}

令我失望的是,只有複選框被追加!也許我的連接是錯誤的。

注意:此處不顯示hide()和fadeIn()。

最終解決

裹ui.item.value的HTML標籤,在這裏<span>標籤:

function autocompletejq() { 
$("#autocomplete").autocomplete({ 
    source: "autocomplete.php", 
    minLength: 1, 
    delay: 0, 
    select: function(event, ui) { 
     alert(ui.item.value); 
     $("<input class=\"added_chkboxes\" type=\"checkbox\" checked=\"checked\" /><span>" + ui.item.value + "</span>").appendTo("#subjects_container").hide().fadeIn(); 
    } 
}); 

}

回答

0

關於效果的一部分:

$("<p>My new Content</p>").appendTo("#myWrapper").hide().fadeIn(); 

關於對象創建: 我認爲你需要在html標籤中包裝你的「ui.item.value」,例如跨度。

總而言之,我會嘗試某事。像這樣:

var newHTML = '<input class="added_chkboxes" type="checkbox" checked="checked" />' +  
    '<span>ui.item.value</span>'; 
$(newHTML).appendTo("#subjects_containe").hide().fadeIn(); 

這裏是一個虛擬的例子:http://jsfiddle.net/SunnyRed/dB2uT/

希望這有助於。

+0

是的,我不得不包裝在html標籤ui.item.value。 SunnyRed,非常感謝! –

+0

Np,激增。不客氣。 – SunnyRed