не могу установить selectedIndex отключить выбор с помощью JavaScript - PullRequest
0 голосов
/ 23 марта 2010

У меня есть этот код, и я продолжаю получать неопределенное значение, если я проверяю 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;
     } 
}

спасибо, Ричард

1 Ответ

1 голос
/ 23 марта 2010

$('selector') (jQuery) возвращает объект со сходной с массивом коллекцией совпадающих узлов DOM. Ваша переменная x является объектом jQuery, а не ссылкой на какой-либо конкретный элемент <select/>. использовать

x[0].selectedIndex

x[0] - это ссылка на первый узел DOM в объекте jQuery.

...