1

javascript と jquery でコーディングされた Web サイトがあります。ボタンをクリックすると変更されるjQuery-uiselectableで作成されたオプションのリストがあります(JavaScriptコードを含むボタン)。私のコードのいくつかの下:

拳、私の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>、プレーン テキストとして表示されます (つまり、オプションをクリックすることはできません)。どうすればこれができるか知っている人はいますか?

4

1 に答える 1

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の別のセレクターを使用できます。

于 2012-09-27T23:07:48.050 に答える