JQuery выбрать HTML не включает в себя тег выбора - PullRequest
0 голосов
/ 12 декабря 2018

У меня есть код js, как показано ниже, я не понимаю, когда я вывожу sel.html (), он не включает, а только опции html.Чем я должен объединить тег.

function replTypeSelect(replType){
    var sel = $('<select/>');
    $.each(replTypeOptions, function(i, item) {
        var option = $("<option></option>");
        option.val(item.val);
        option.text(item.text);

        if(item.val == replType){
            option.attr('selected','selected');
        }
        option.appendTo(sel);

    });

    return "<select>".concat(sel.html(), "</select>");
}

Ответы [ 2 ]

0 голосов
/ 12 декабря 2018

Вы можете сделать так.

return sel.wrap("<span />").parent().html()
0 голосов
/ 12 декабря 2018

используйте $(element)[0].outerHTML вместо ...

попробуйте этот код ниже:

function replTypeSelect(replType){
    var sel = $('<select/>');

    var replTypeOptions = [
      {val:'my', text:'Malaysia'},
      {val:'uk', text:'United Kingdom'},
      {val:'us', text:'United State'},
      {val:'id', text:'Indonesia'},
    ];

    $.each(replTypeOptions, function(i, item) {
        var option = $("<option/>");
        option.attr('value', item.val);
        option.text(item.text);

        if(item.val == replType){
            option.prop('selected',true);
        }
        option.appendTo(sel);
    });

    return sel[0].outerHTML;
}

проверьте эту скрипку для вашего удобства: https://jsfiddle.net/syamsoul/7y3eozqr/

...