如何在页面加载时使用动态UI标签值为服务器端字符串分配?这是我的代码
//Here asp Label
<html>
<body>
<asp:Label ID="dynmcHiddenLabel" runat="server" Text=""></asp:Label>
</body>
</html>
//Javascript Code that assigning value on page load to Label
<script>
$(document).ready(function () {
sliderIdentification();
});
function sliderIdentification() {
var typename = $('#menu li.active a').attr('name');
$('#ctl00_dynmcHiddenLabel').text(typename);
$('#ctl00_dynmcHiddenLabel').val(typename);
}
</script>
//on server side - assigning label value to string value
string CategoryType = dynmcHiddenLabel.Text;
但我在CategoryType
中获得""
答案 0 :(得分:0)
首先要做的事情。恕我直言,你应该在这里使用asp:HiddenField
。
<asp:HiddenField ID="dynmcHiddenLabel" runat="server" />
现在,如果您使用的是ASP.NET 4或更高版本,请使用ClientIDMode
属性
<asp:HiddenField ID="dynmcHiddenLabel" runat="server" ClientIDMode="Static" />
并像这样调用你的函数
function sliderIdentification() {
var typename = $('#menu li.active a').attr('name');
$('#dynmcHiddenLabel').val(typename);
}
如果您使用的是ASP.NET VERSION 3.5或更低版本,请在ASP.NET中使用inline expressions
function sliderIdentification() {
var typename = $('#menu li.active a').attr('name');
$('#<%= dynmcHiddenLabel.ClientID %>').val(typename);
}
如果您特别关注使用asp:Label
,请将.val
改为.html
,如下所示
$('#<%= dynmcHiddenLabel.ClientID %>').html(typename);
因为asp:Label
呈现为span
P.S:无需在代码隐藏中更改任何内容。