簡體   English   中英

從div提取文本

[英]Extract text from a div

我正在嘗試使用div和jquery制作一個DropDownList(以便我可以根據需要設置其樣式)...並且可以正常工作,但問題是我無法從列表中獲取選定的值。

選擇選項后,我將選擇的值復制到div中。我想使用c#(在.aspx.cs頁中)提取此值...我嘗試使用字符串生成器和innerHtml(之后將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(); 

第二種方法:

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

string s = sb.ToString();

請指出我的錯誤,並在這方面幫助我(提取div的innerHTML)。 謝謝

不,將內容放在div中是行不通的。

您的示例不夠完整,無法看到所有發生的情況,但是假設您使用的是標准<form> ,使用Javascript將div的內部HTML設置為一個值,然后以標准方式提交。

然后,一種執行所需操作的方法是使用隱藏的輸入並設置其value屬性而不是其內容。

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

在后面的代碼中,C#可以使用.Value屬性提交后從此控件中檢索值。

好的,謝謝您的回復。.我找到了解決問題的方法...我使用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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM