【问题标题】:Pass value to Jquery function from code behind将值从后面的代码传递给 Jquery 函数
【发布时间】:2026-01-27 10:40:02
【问题描述】:
我在 asp.net 表单上使用 Jquery 进度条控件来显示检查员完成工作的百分比。这是进度条的客户端功能。
<script>
$(function () {
$("#progressbar").progressbar({
value: 37
});
});
</script>
<form id="form1" runat="server">
<div id="progressbar"></div>
</form>
有没有办法从页面后面的代码中设置进度条值?从数据库中读取值。
【问题讨论】:
标签:
c#
jquery
asp.net
jquery-ui
jquery-plugins
【解决方案1】:
您可以使用 registerstartupscript 从 ASP.NET 代码隐藏文件中注入脚本。
myScript = "\n<script type=\"text/javascript\" language=\"Javascript\" id=\"EventScriptBlock\">\n";
myScript += "ShowProgressBar(35);"; //35 is dynamic value
myScript += "\n\n </script>";
Page.ClientScript.RegisterStartupScript(this.GetType(), "myKey", myScript, false);
JavaScript 代码
function ShowProgressBar(value)
{
$("#progressbar").progressbar({
value: value
});
}
【解决方案2】:
尝试以下步骤
- 首先在页面加载时将
DB 值设置为hidden field。喜欢 (HiddenFieldID.value="37" // from DB)
- 使用
hidden field值设置js函数中进度条的值如下。
$(function () {
$("#progressbar").progressbar({
value: $("#<%= HiddenFieldID.ClientID %>").val();
});
});
【解决方案3】:
你不妨试试:
ScriptManager.RegisterClientScriptBlock(Me.Page, Me.Page.GetType(), "progressbar", "ShowProgressBar("+ 35 +");", True)