从 ViewBag 填充 javascript 变量?
Populate javascript variable from ViewBag?
我在 Whosebug 上看到我们可以这样做以使用 ViewBags(使用 razor)填充 js 变量:
@{
var jss = new System.Web.Script.Serialization.JavaScriptSerializer();
var userInfoJson = jss.Serialize(ViewBag.User);
}
有了这个:
<script>
//use Json.parse to convert string to Json
var userInfo = JSON.parse('@Html.Raw(userInfoJson)');
</script>
我想用 aspx 而不是 razor 做同样的事情。你能帮帮我吗?
将 public 属性 添加到您的页面并在页面加载时填充它(您可能必须在页面初始化时执行此操作,我可以'我不记得先是哪个进程了)。
public UserType UserToSerialize {get; set;}
protected void Page_Load(object sender, EventArgs e)
{
UserToSerialize = LoadUser(); //I assume you've got some magic to do this already
}
标记:
<script>
var userInfo = JSON.parse("<%# new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(UserToSerialize) %>");
</script>
注意我使用 UserToSerialize
以避免干扰 Page.User property。
在我的控制器中:
Viewbag.test="Thanks to you it works!"
在我的 aspx 中:
public String test {get; set;}
protected void Page_Load(object sender, EventArgs e)
{
test = ViewBag.test;
}
<script>
alert('<%=test%>');
</script>
结果:感谢你,它成功了!
我在 Whosebug 上看到我们可以这样做以使用 ViewBags(使用 razor)填充 js 变量:
@{
var jss = new System.Web.Script.Serialization.JavaScriptSerializer();
var userInfoJson = jss.Serialize(ViewBag.User);
}
有了这个:
<script>
//use Json.parse to convert string to Json
var userInfo = JSON.parse('@Html.Raw(userInfoJson)');
</script>
我想用 aspx 而不是 razor 做同样的事情。你能帮帮我吗?
将 public 属性 添加到您的页面并在页面加载时填充它(您可能必须在页面初始化时执行此操作,我可以'我不记得先是哪个进程了)。
public UserType UserToSerialize {get; set;}
protected void Page_Load(object sender, EventArgs e)
{
UserToSerialize = LoadUser(); //I assume you've got some magic to do this already
}
标记:
<script>
var userInfo = JSON.parse("<%# new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(UserToSerialize) %>");
</script>
注意我使用 UserToSerialize
以避免干扰 Page.User property。
在我的控制器中:
Viewbag.test="Thanks to you it works!"
在我的 aspx 中:
public String test {get; set;}
protected void Page_Load(object sender, EventArgs e)
{
test = ViewBag.test;
}
<script>
alert('<%=test%>');
</script>
结果:感谢你,它成功了!