2010-12-22 57 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/