我是jQuery的新手,並且在處理某些問題時遇到了一些麻煩。打開和關閉jQuery功能
我有這個功能,被稱爲在頁面底部附加自動完成功能的文本框,這部分工作正常。這裏是被稱爲啓用自動完成代碼:
$(function(){
$('#intext').autocomplete('get-data.php?mode=sql', {
width: 400,
max: 5,
selectFirst: false
});
});
但是在搜索框中包含了兩種不同類型的搜索兩個單選按鈕。自動完成功能只能用於一種搜索類型。
所以我的問題是,我怎麼能通過點擊一個單選按鈕來啓用它,並通過單擊第二個單選按鈕來禁用它?
編輯
自動完成腳本有一個.autocomplete(「禁止」)的方法,但我不知道如何啓用/禁用基於哪個單選按鈕被選中的。
EDIT 2
我想獲得由「羅裏McCrossan」建議的工作方法,因爲我使用jQuery UI自動完成。下面是我的單選按鈕和搜索框代碼:
News: <input type="radio" class="myRadio" name="search_type" value="news" checked="checked" onclick="this.form.action='/search.php';" />
Media Gallery: <input type="radio" class="myRadio" name="search_type" value="media" onclick="this.form.action='/media.php';" />
<input id="intext" class="txt" type="text" name="searchterms" />
我在每一頁上運行腳本下面的代碼都:
addAutoComplete($("#intext"));
$(".myRadio").change(function() {
if ($(this).val() == "news") {
if (!$("#intext").hasClass("ui-autocomplete-input"))
addAutoComplete($("#intext"));
}
else {
$("#intext").autocomplete('destroy')
}
});
function addAutoComplete($el) {
$('#intext').autocomplete('autocomplete-data.php?mode=sql', {
width: 400,
max: 5,
selectFirst: false
});
}
這似乎並沒有工作,和錯誤控制檯在Firefox中不顯示任何錯誤。
通過「#myRadio」並不意味着這兩個單選按鈕都需要相同的ID?我也試圖編寫驗證代碼,並且元素不能具有相同的ID。我也是jQuery的新手,所以如果我的理解不正確,請隨時介入並糾正我。 – 2012-04-16 07:48:32
這是一個'.',它是一個類選擇器。 – 2012-04-16 07:49:09
對不起,當我看着它時,有幾個不同的東西混在一起。我會試試看看它是如何發展的。 – 2012-04-16 07:49:58