是jquery和ajax的新手,我有一个小问题,我相信它有一个简单的解决方法!我有一个表单选择使用jquery和ajax从数据库调用更新,当我用jNice包装表单时,ajax更新停止工作。我已经四处搜索,发现使用$ .jNice.SelectUpdate函数可以解决问题,但无法使其工作,我们将不胜感激。
使用代码编辑:
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>
答案 0 :(得分:1)
你需要在ajax success
方法中做两件事:
(1)使用以下内容更新select
options
的{{1}}列表here有关更新select
的一些有用信息S:
var selectEl = $("#area").get(0);
select.options[selectEl.options.length] = new Option("1234", "1234");
您需要将$.ajax
调用中的数据放入Option构造函数中。
(2)调用jNice的SelectUpdate
函数:
$.jNice.SelectUpdate(selectEl);
在此处查看一个简单示例(点击“搜索”时会添加一个新选项):http://jsfiddle.net/andrewwhitaker/w5wwy/