Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将JSON数据传递给代码隐藏方法(而不是Webmethod)?_Javascript_C#_Asp.net_Json_C# 4.0 - Fatal编程技术网

Javascript 如何将JSON数据传递给代码隐藏方法(而不是Webmethod)?

Javascript 如何将JSON数据传递给代码隐藏方法(而不是Webmethod)?,javascript,c#,asp.net,json,c#-4.0,Javascript,C#,Asp.net,Json,C# 4.0,我有JSON数据,需要将其传递给代码隐藏并绑定到obout网格。我知道我们可以使用传递数据。但在Webmethod中,我无法将数据绑定到obout网格和任何网格。因为它是静态webmethod 所以现在我尝试从javascript调用代码隐藏方法,并将数据作为参数传递给该方法。我们怎么能做到呢 users = []; for (var i = 0; i < usersInfo.length; i++) { user = { Us

我有JSON数据,需要将其传递给代码隐藏并绑定到obout网格。我知道我们可以使用
传递数据。但在Webmethod中,我无法将数据绑定到obout网格和任何网格。因为它是静态webmethod

所以现在我尝试从javascript调用代码隐藏方法,并将数据作为参数传递给该方法。我们怎么能做到呢

 users = [];
 for (var i = 0; i < usersInfo.length; i++) {
          user = {
                   UserName : usersInfo[i].UserName,
                   Email : usersInfo[i].Email,
                   Status : status
          };

          users.push(user);
    }
    var results = "";
    $('#lblError').val('');
    if (users.length > 0) {
        //Pass the `users` data to ShowResults code behind method.
     }
users=[];
对于(var i=0;i0){
//将“用户”数据传递给ShowResults代码隐藏方法。
}
代码隐藏
public void ShowResults(列出用户)
{
oboutGrid.DataSource=用户;
oboutGrid.DataBind();
}
公共部分类UsersInfo
{
公共字符串用户名{get;set;}
公共字符串电子邮件{get;set;}
公共字符串状态{get;set;}
}

一种方法是在aspx表单中包含一个隐藏字段

<asp:HiddenField ID="jsonDataHolder" ClientIDMode="Static" runat="server"/>
然后,当页面正常发回时,您可以访问隐藏字段,对其进行反序列化并执行代码

protected void btn_DOPostBack_Click(object sender, EventArgs e)
{
    string data = this.jsonDataHolder.Value;
    // desrialize json, do ur code
}

为什么您需要将JSON对象传递给代码隐藏和代码隐藏绑定网格,为什么不能在JS中直接传递?@ArindamNayak…obout grid不选择从JS绑定数据。然后您可以使用updatepanel来完成所有这一切,这可能效率不高,但您可以尝试一下!
$('#jsonDataHolder').val(JSON.stringify({ id: 1, name: "mohamed" }));
protected void btn_DOPostBack_Click(object sender, EventArgs e)
{
    string data = this.jsonDataHolder.Value;
    // desrialize json, do ur code
}