1

我想将一些日期从 C# 发送到 Javascript。数据 - 它是 html 的代码。但是当我将它发送到 Javascript 时它失败了。当我输入“理想数据”时,它就起作用了。

比我很确定错误是在包含 HTML 代码的文本中。

我这样做:

data = data.Replace("\"", "\\\"");
data = data.Replace("\n", "\\\n");
data = data.Replace("\t", " ");

但这仍然无济于事。你知道有什么库可以检查客户端 JS 的字符串是否正常吗?或者我应该怎么做才能检查字符串?

编辑:

错误:未捕获的语法错误:意外的令牌非法

我尝试放置的数据(示例):

Poczta - Najlepsza Poczta, największe załączniki - WP.PL --> --> logowanie Poczta | 头条新闻 | WP.PL na komórkę | Nokaut.pl WP。homepagelink() // Logowanie do poczty WP Logowanie dla Twojego bezpieczeństwa jest szyfrowane (SSL) Login lub adres e-mail: WP.$('#login').focus(); 哈斯洛:» Nie masz konta? Załóż je » Skuteczny antyspam więcej.. Pojemność bez limitów więcej.. Poczta w komórce więcej.. Duże załączniki więcej.. NPB("006"); 北极星:宝塔 | 维兹纳查尼特雷西 | 体重指数 | 塔罗牌 | 节目电视 | 普洛特基 | 魔杰IP | 维多莫希 | 运动 | 公司头条新闻| 拉普拉西| 雷克拉玛| Biznes z WP.PL| Skontaktuj się z WP。PL| 普拉卡| Prywatność| 扎萨迪·科日斯坦| Polityka antyspamowa Zobacz wszystkie serwisy| RSS 版权所有 © 1995-2012 Wirtualna Polska

4

2 回答 2

2

在 .NET4 中有一种新HttpUtility.JavaScriptStringEncode方法。对于早期版本,请查看此处: Embedding JavaScript Strings from an ASP.NET Page

于 2012-08-29T11:10:38.200 回答
1

使用这个对象,我们在 C# 中序列化和反序列化对象。这是一个快速示例:

一个简单的 Employee 对象:

public class Employee
{
    public string Name { get; set; }
    public string Age { get; set; }
    public string ID { get; set; }   
}

将它们的一些实例添加到列表中:

Employee oEmployee1 = 
       new Employee{Name="Pini",ID="111", Age="30"};

Employee oEmployee2 = 
      new Employee { Name = "Yaniv", ID = "Cohen", Age = "31" };
Employee oEmployee3 = 
        new Employee { Name = "Yoni", ID = "Biton", Age = "20" };

List<Employee> oList = new List<Employee>() 
{ oEmployee1, oEmployee2, oEmployee3 };

Serializing then:

System.Web.Script.Serialization.JavaScriptSerializer oSerializer = 
         new System.Web.Script.Serialization.JavaScriptSerializer();
string sJSON = oSerializer.Serialize(oList);
And here is the output:

[{"Name":"Pini","Age":"30","ID":"111"},
{"Name":"Yaniv","Age":"31","ID":"Cohen"},
{"Name":"Yoni","Age":"20","ID":"Biton"}]
于 2012-08-29T11:12:23.330 回答