JQUERY 文字换行问题 C#

JQUERY in literal line break issue C#

我正在从后面的代码中用文字编写脚本

string script = "<script type=\"text/javascript\">var ServiceProviderEmail = new Array();";
            for (int i = 0; i < dsEmailDetails.Tables[3].Rows.Count; i++)
            {
                script += "var objServiceProvider = new Object();";
                script += "objServiceProvider.ServiceProviderId = " + dsEmailDetails.Tables[3].Rows[i]["ServiceProviderId"].ToString() + ";";
                script += "objServiceProvider.Name = '" + dsEmailDetails.Tables[3].Rows[i]["FirstName"].ToString() + " " + dsEmailDetails.Tables[3].Rows[i]["LastName"].ToString() + "';";
                script += "objServiceProvider.Email = '" + dsEmailDetails.Tables[3].Rows[i]["Email"].ToString() + "';";
                script += "objServiceProvider.FaxNumber = '" + dsEmailDetails.Tables[3].Rows[i]["FaxNumber"].ToString() + "';";
                script += "ServiceProviderEmail.push(objServiceProvider);";
            }

我得到的输出就像

var ServiceProviderEmail = new Array();var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4820;objServiceProvider.Name = 'Timothy Collins';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(888) 846-6037';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4821;objServiceProvider.Name = 'James Houston';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(972) 681-2376';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4822;objServiceProvider.Name = 'Christianah Okunade';objServiceProvider.Email = 'platinumhs@msn.com';objServiceProvider.FaxNumber = '';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4823;objServiceProvider.Name = 'Lorna Ferguson';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(972) 293-2056';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4824;objServiceProvider.Name = 'Harold Delasalas';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(866) 700-8688';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4825;objServiceProvider.Name = 'Eliazar Alvarez';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(972) 780-5774';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4826;objServiceProvider.Name = 'Eric Nadler';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(214) 370-1085';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4827;objServiceProvider.Name = 'Jayaprakash Narayana';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(469) 899-6586';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4828;objServiceProvider.Name = 'Jagannath Chittimoori';objServiceProvider.Email = 'chittimoorijagannath@gmail.com';objServiceProvider.FaxNumber = '';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4829;objServiceProvider.Name = 'Joyce Chibueze';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4830;objServiceProvider.Name = 'Avian Kidd';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(214) 761-8812';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4831;objServiceProvider.Name = 'Elham Jamalabadi';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(903) 408-7807';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4832;objServiceProvider.Name = 'Nat Cheeks';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4833;objServiceProvider.Name = 'Murray Strauss';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(972) 709-1782';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4834;objServiceProvider.Name = 'Sola Akingbade';objServiceProvider.Email = 'akingbaderemi@gmail.com';objServiceProvider.FaxNumber = '';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4835;objServiceProvider.Name = 'Vincent Chukwu';objServiceProvider.Email = 'chukwu@mail2vince.com';objServiceProvider.FaxNumber = '';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4836;objServiceProvider.Name = 'Adeola Amusan';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4837;objServiceProvider.Name = 'Howard Anderson';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(214) 943-8213';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4838;objServiceProvider.Name = 'Odette Campbell';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(972) 695-8827';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4839;objServiceProvider.Name = 'Aitazaz Shah
';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4840;objServiceProvider.Name = 'Alfred
 Zevallos
';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4841;objServiceProvider.Name = 'Berto Zamora';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(214) 879-7808';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4842;objServiceProvider.Name = 'Jiaul Ahsan';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '(888) 846-6037';ServiceProviderEmail.push(objServiceProvider);var objServiceProvider = new Object();objServiceProvider.ServiceProviderId = 4843;objServiceProvider.Name = 'Alma
 Horrilleno
';objServiceProvider.Email = '';objServiceProvider.FaxNumber = '';ServiceProviderEmail.push(objServiceProvider);

这是给出和错误。我如何从后面的代码在脚本中添加自定义换行符?

您的其中一个名字(Aitazaz Shah 的 maby)中似乎有一个 ' 符号,它破坏了您的代码。为了安全起见,您必须将其替换为 dsEmailDetails.Tables[3].Rows[i]["FirstName"].ToString().Replace("'", "\'")。 更好的解决方案是,使用 c# 中的对象创建数组并通过 newtonsoft json 对其进行字符串化并编写 <script type=\"text/javascript\">var ServiceProviderEmail = JSON.parse('" + NewtonsoftJsonString + "')</script>

一些名称中有换行符,这些名称的换行错误。

script += "objServiceProvider.Name = '" + dsEmailDetails.Tables[3].Rows[i]["FirstName"].ToString().trim() + " " + dsEmailDetails.Tables[3].Rows[i]["LastName"].ToString().trim() + "';";