我有这个代码,如果我测试selectedIndex,我会不断定义。
alert(x.selectedIndex);
所以,设置它也是一个问题。
有没有人可能会看到问题所在?
//makes list off tags
function ttyps_select(data,naamsel,selectid, containerid){
if(!ttyps.length){
jQuery.each(data, function(index, itemData) {
ttyps.push( new Tagtype(itemData.tag_id, itemData.tag ));
});
}
opties = "<option value=\"-1\"></option>\n";
for(var i=0; i<ttyps.length; i++) {
var dfnkey = ttyps[i].tag_id;
var dfnsel = ttyps[i].tag;
if (dfnkey==selectid) {
opties +="<option value="+ttyps[i].tag_id+" SELECTED>"+dfnsel+"</option>\n";
} else {
opties +="<option value="+dfnkey+">"+dfnsel+"</option>\n";
}
}
$("<select name=\"" + naamsel + "\" size=\"1\" ></select>")
.html(opties)
.change(function(e){
select_tag(containerid);
})
.appendTo("#"+naamsel);
}
function select_tag(id) {
var x = $('#frmttypid'+id+' select');
var ttidx = x.val();
var tag = getTagtype(ttidx).tag;
x.selectedIndex=0;
x.blur();
if( tag ){
document.forms['frmtags']['frmtag'+id].value=tag;
}
}
谢谢,理查德
答案 0 :(得分:1)
$('selector')
(jQuery)返回一个具有匹配DOM节点的类似数组的集合的对象。您的x
变量是一个jQuery对象,而不是对任何特定<select/>
元素的引用。使用
x[0].selectedIndex
x[0]
是对jQuery对象中第一个DOM节点的引用。