如何在ui-selectable jquery中动态更改选项列表

时间:2012-09-27 22:51:19

标签: javascript jquery dynamic jquery-ui-selectable

我有一个用javascript和jquery编码的网站。我有一个用jQuery-ui selectable创建的选项列表,当点击一个按钮时它会改变(按钮包含一个javascript代码)。在我的一些代码下面:

Fist,我的ui可选代码......

$(function() {
    $("#selectable").selectable({
        stop: function(){
            var result = $("#select-result").empty();
            $(".ui-selected", this).each(function(){
                var seq = $(this).text(); //data -> selected sequence
                showdata(seq); //TODO when sequence is selected
            });
        }
    });

在这里,我的代码构建了一组选项,这些选项将在单击按钮时调用...

function showS2P(){
    var s = '';
    s = s + "<div class=\"listS2P\" align=\"left\">";
    //document.write(arrS2P.length); //show number of patterns per selected zone
    if (arrS2P.length == 0) {
        s = s + "Any pattern found";
    } else {
        s = s + "<ul id=\"selectable\">";
        for (var i=0; i<arrS2P.length; i++){
            s = s + "<li class=\"ui-widget-conten\">"+arrS2P[i]+"</li>";
            //document.write("<h3> "+i+" -> "+arrS2P[i]+"</h3> <br/>");
        }
        s = s + "</ul>";
    }
    s = s + "</div>";
    document.getElementById('selectSeq').innerHTML = s; //selectSeq is a <div> which change when a button is clicked
    $(selectable).selectmenu("refresh");
}

目前,当我点击我的按钮时,选项显示在<div>中,但显示为纯文本(即,无法单击选项)。请问,有人知道我该怎么做吗?

1 个答案:

答案 0 :(得分:0)

要在点击事件上添加操作,您需要写下:

$("#selectSeq option").live("click",function(){
   // Here do something
   var val = $(this).val(); // value of option;
   var text = $(this).html(): // text of option;
});

// PS:相反'#selectSeq'你可以使用另一个select的id或另一个list的选择。