【问题标题】:Pass jquery string to Code Behind file ASP.NET C#将 jquery 字符串传递给代码隐藏文件 ASP.NET C#
【发布时间】:2012-08-21 10:00:25
【问题描述】:

我有一个从 jquery 生成的字符串,例如 string1,string2,string3,stringn 。我需要使用 jquery 将此数据提交到另一个将处理字符串的 asp 页面。如何将此字符串获取到 C# 代码?我想使用文件后面的代码来处理这个逗号分隔的列表。 在 ASP.NET\C# 中非常新

【问题讨论】:

    标签: c# jquery asp.net


    【解决方案1】:

    首先,您需要将 JSON 发布到服务器: 为此,您可以有机会通过 $.ajax() 发送,或者您可以像这样访问 PageMethod:(这也是给定页面上的 javascript 代码)

     //obj is the object what you have on the clientside. (f.e. an array of strings)
     var jsonString = JSON.stringify(obj, '');
    
     //in this example the method's name is LoadItems and the IfSuccess 
     //and IfError methods for callbacks
     PageMethods.LoadItems(jsonString, this.IfSuccess, this.IfError, this);
    

    在服务器端执行此操作后,如果您只有字符串,则需要将 json 反序列化为指定的类,object[] 或 string[]。这是您的案例的示例:

                [WebMethod]
                public static string LoadStrings(string jsonString)
                {
                    try
                    {
                        JavaScriptSerializer s = new JavaScriptSerializer();
    
                        string[] stringArray = s.Deserialize<string[]>(jsonString);
                    }
                    ...
                }
    

    使用此解决方案,您可以访问 stringArray 中的字符串。

    【讨论】:

      【解决方案2】:

      您需要向您的 asp.net 应用程序发出 AJAX 请求。 jQuery 有一个 $.ajax() 方法可以帮助您更轻松地完成此操作。

      您也可以使用传统的“表单”,只需让 jquery 将数据粘贴在隐藏字段中并触发提交。

      【讨论】:

        【解决方案3】:

        您将需要使用 jquery post 方法,如下所示:

        $.post('File Address', {data : your String});
        

        然后在asp.net页面中检索。

        【讨论】:

          猜你喜欢
          • 2018-12-23
          • 1970-01-01
          • 1970-01-01
          • 2019-07-21
          • 2011-01-10
          • 1970-01-01
          • 2019-03-30
          • 2014-01-01
          • 1970-01-01
          相关资源
          最近更新 更多