微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将值从c#传递给ascx页面的javascript

我正在使用asp.net c#.我想从c#向ascx页面发送一个字符串值.我正在使用以下代码来做到这一点,

string one = @"\'" + names[0,0] + "\'" + "," + @"\'" + names[1,0] + "\'";
string[] splitted = one.Split('\'');
string onces =  splitted[1] + ","  + splitted[3] ;
inpHide.Value =onces;

在ascx页面我应该将此值传递给javascript,我这样做了,

$(document).ready(function () {
  var hiddenControl = '<%= inpHide.ClientID %>';
  var values = document.getElementById(hiddenControl).value;
  alert(values);

  var tweetUsers = [values];
});
<input id="inpHide" type="hidden" runat="server" />

当我使用类似[“”twitter“,”microsoft“”]的firebug值调试javascript但是“引号被自动添加到javascript中.但我应该像这样[”twitter“,”microsoft“]因为这个字符串javascript不行.我怎么解决这个问题?请帮我解决这个问题.提前谢谢你.

解决方法

您应该尝试使用JSON,并将该字符串传递给客户端:
使用此函数将您的字符串序列化为JSON:

public string ToJSON(this object obj)
    {
        JavaScriptSerializer serializer = new JavaScriptSerializer();
        return serializer.Serialize(obj);
    }

然后将返回字符串传递给客户端,尝试使用公共字符串并在javascript中使用该公共字符串而不是隐藏控件

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐