我正在尝试使用div和jquery创建一个DropDownList(这样我可以根据需要设置它)...并且它的工作但问题是我无法从列表中获取所选值..
选择选项后,我将选中的值复制到div中...我想使用c#(在.aspx.cs页面中)提取...我尝试使用字符串生成器和innerHtml(在向div添加runat =“server”之后)..但它不起作用...代码如下
.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中)。 感谢
答案 0 :(得分:2)
不,将内容放入div中将无效。
您的示例不够完整,无法看到发生的所有情况,但我们假设您处于标准<form>
,您将div的内部HTML设置为使用Javascript的值然后您就是以标准方式提交。
然后,一种方法可以使用隐藏的输入并设置其value
属性而不是其内容。
<input id="label" class="labeldiv_dd" runat="server" type="hidden">
在代码隐藏中,C#可以在使用.Value
属性提交后从此控件中检索值。
答案 1 :(得分: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”是隐藏字段控件的 id