RadioButton rb; 标签lb;
while (reader.Read())
{
rb = new RadioButton(); **//radio buttuns created**
lb = new Label(); **// labels created**
lb.Text = reader[0].ToString(); *// each label's text assigned*
rb.Attributes.Add("OnClick", "getSelectedAuthor('"+lb.Text.ToString()+"')");
PlaceHolder1.Controls.Add(rb); *//when the radio clicked,function called*
PlaceHolder1.Controls.Add(lb); *// to set use the text of label*
PlaceHolder1.Controls.Add(new LiteralControl("<br />"));
}
conAuthorTbl.Close();
// innerthtml不能用于此目的,//因为我需要将// Labe2的文本发送到其他页面,//当我使用Response.Redirect(..)时,//没有字符串来自Label2
<script language="javascript" type="text/javascript">
function getSelectedAuthor(text) {
document.getElementById("Label2").innerText = text;
}
</script>
//我要设置文字的文字
<div>
<asp:Label ID="Label2" runat="server" Text="" ></asp:Label>
</div>
答案 0 :(得分:0)
我建议你使用像knockout.js这样的东西吗?它的客户端MVVM,可以使用声明性绑定来实现任务。我希望这会有所帮助。
答案 1 :(得分:0)
试试这个:
<script language="javascript" type="text/javascript">
function getSelectedAuthor(text) {
document.getElementById("<%=Label2.ClientID%>").innerText = text;
}
</script>
只要javascript位于同一个aspx页面上,这将有效。
如果你需要在外部JS文件中使用wirk,那么你可以为你的js文件创建一个映射。
所以你会在你的aspx页面中输入这样的东西:
<script language="javascript" type="text/javascript">
var myElement_Label2 = getElementById("<%=Label2.ClientID%>");
etc...
</script>
然后在我们的外部js文件中,您可以使用以下引用:
myElement_Label2.innerText = "something";