2010-12-22 55 views
1

是jquery和ajax的新手,我有一個小問題,我相信有一個簡單的修復!我有一個表單選擇使用jquery和ajax從數據庫調用中更新,當我用jNice包裝表單時,ajax更新停止工作。我搜索了四周,發現使用$ .jNice.SelectUpdate函數應該可以解決問題,但無法使其工作,任何幫助將不勝感激。ajax窗體選擇更新不工作與jNice

與代碼編輯:

function getLocation() { 
$.ajax({ 
    type:"POST", 
    url: "formdata.asp", 
    dataType: "application/x-www-form-urlencoded", 
    data: "Action=GetLocation&Val=" + $("#area").val(), 
    async: false, 
    success: function(msg){ 
     $("label[id$=Two]").add("select[id$=Two]").remove(); 
     $("#loclist").append(msg); 
    } 
}) 
} 

(不jNice類第二形式選擇更新)

<form class="jNice" method="post" action="searchresults.asp"> 
<fieldset id="loclist"> 
<legend id="lgdloclist" title="Locations">Locations</legend> 
<label id="lblOne" for="ddlOne" title="Select an Option">Select an Option:</label> 
    <select id="area" style="width:175px; display:block;"> 
    <option value="">Choose..</option> 
    <option value="hse">HSE</option> 
    <option value="nvq">NVQ</option> 
    <option value="made4">Made4</option> 
</select> 
<br /> 
</fieldset> 
<input type="submit" name="submit" value="Search" /> 
</form> 
+2

發表一些代碼! – 2010-12-22 18:50:44

回答

1

你需要做兩件事情在你的Ajax success方法:

(1)使用類似這樣的內容更新select的列表optionshere的有關更新select小號一些有用的信息:

var selectEl = $("#area").get(0); 
select.options[selectEl.options.length] = new Option("1234", "1234"); 

你需要把數據從$.ajax通話中選項的構造。

(2)呼叫jNice的SelectUpdate功能:

$.jNice.SelectUpdate(selectEl); 

看看這裏一個簡單的例子(當您單擊 「搜索」 的新選項被添加):http://jsfiddle.net/andrewwhitaker/w5wwy/