0

div と jquery を使用して DropDownList を作成しようとしています (必要に応じてスタイルを設定できるようにするため)...そして機能していますが、問題はリストから選択した値を取得できないことです..

オプションを選択した後、選択した値を a div にコピーしています。これを c# (.aspx.cs ページ内) を使用して抽出したいのですが、文字列ビルダーと innerHtml(after runat="server" を div に追加します)..しかし、それは機能しません...コードは次のとおりです

.aspx ページ:

<div class="ddl">
    <div id="lowertriangle" class="lowertriangle"></div>
    <div id="uppertriangle" class="uppertriangle"></div>
    <div id="label" class="labeldiv_dd" runat="server"></div>//***This is the div from which I want to extract value***
    <div id="options" class="optionsidv_dd">
        <ul id="options_ul">
            <li id="0">Select One Option</li>
            <li id="1">Option 1</li>
            <li id="2">Option 2</li>
            <li id="3">Option 3</li>
            <li id="4">Option 4</li>
            <li id="5">Option 5</li>
        </ul>
    </div>
</div>

aspx.cs ページ

私が試した方法1:

string sel_text = label.InnerHtml;
display_sel_value.Text = sel_text.ToString(); 

2番目の方法:

var sb = new StringBuilder();
label.RenderControl(new HtmlTextWriter(new StringWriter(sb)));

string s = sb.ToString();

私の間違いを親切に指摘し、この点で私を助けてください(つまり、divのinnerHTMLを抽出する際に)。ありがとう

4

2 に答える 2

2

いいえ、コンテンツを div に配置しても機能しません。

あなたの例はすべてが起こるのを見るのに十分ではありませんが<form>、あなたが標準にいると仮定しましょう.divの内部HTMLをJavascriptで値に設定し、標準的な方法で送信しています.

次に、必要なことを行う1つの方法は、非表示の入力を使用し、valueその内容の代わりにその属性を設定することです.

<input id="label" class="labeldiv_dd" runat="server" type="hidden">

コード ビハインドでは、C# は、プロパティと共に送信した後、このコントロールから値を取得できます.Value

于 2013-10-03T13:00:50.040 に答える
0

返信ありがとうございます..問題を回避する方法を見つけました... HiddenField コントロールを使用して、jQueryを使用して選択した値を保存しました

$("#options_ul li").click(function () {
            var text = this.innerHTML;
            ***$('#<%= selectedvalue.ClientID %>').val(text);***
            $("#options_ul li").css("background-color", "#c2c2c2");
            $(this).css("background-color", "white");
            //var prev = this.id;
            //document.getElementById("label").innerHTML = text;
            toggleHeight();
        });

次に、サーバー側でアクセスしました

selectedvalue.value;

PS: "selectedvalue" はhiddenfield コントロールのIDです

于 2013-10-04T10:13:13.250 に答える