2016-12-21 106 views
1

自動完成我的代碼無法正常工作。基本的jquery自動完成功能不起作用

下面是我HTML代碼:

<div class="form-group ui-widget"> 
    <label for="input" class="control-label font-12 font-blue">Enter your Area <span class="req">*</span></label> 
    <input class="form-control ui-autocomplete-input" required="required" placeholder="Enter your Area" name="register[pincode]" id="area"> 
</div> 

JS

$(document).ready(function() { 
    var areas = ["States", "Australia", "Indies"]; 
    $("#register[pincode]").autocomplete({ 
     source: areas 
    }); 
}); 

此外,HTML代碼被包括爲模板,如果它的確與衆不同,最好我認爲它應該不是因爲我將它包含在document.ready函數中。

腳本被包括順序爲jquery.min.js隨後的jquery-ui.min.js然後自舉。該版本jQuery是2.2.0

+0

你是什麼意思是「不工作」嗎? [瀏覽器控制檯](http://webmasters.stackexchange.com/q/8525)中是否有錯誤消息? – Xufox

+0

在jsfiddle中爲調試目的準備代碼 – rahulsm

回答

2

有了: $("#register[pincode]")您試圖引用name屬性就好像它是該ID。您的元素具有「區域」的標識。您需要使用:

$("#area").autocomplete({ 
    source:areas 
}); 

Jquery id selector docs

如果你真的想使用的名稱,你可以使用:

$("input[name='register[pincode]']").autocomplete({ 
    source:areas 
}); 

注意:不要忘了在你的名字值的單引號或它會拋出錯誤(至少在值中使用[])。

Attribute selector docs

2

試試這個:

$(function() { 
    var availableTags = ["States", "Australia", "Indies"] 
    $("#area").autocomplete({ 
     source: availableTags 
    }); 
}); 

Working Fiddle

+0

仍然奇怪地工作。只是爲了確認,有一種模式可以打開,我必須應用自動完成功能 –

+0

Bootstrap模式或UI對話框? –

+0

它是UI對話框 –

相關問題