gpt4 book ai didi

c# - DataTable 到 JSON 到 Controller 到 jqGrid

转载 作者:太空宇宙 更新时间:2023-11-03 13:22:09 26 4
gpt4 key购买 nike

我有 3 个表单,Associate.cs、HomeController.cs、Index.cshtml。

我从 Associate.cs 加载一个 DataTable 并使用此代码将其转换为 JSON 格式。

    public string GetAssociateFromDB()
//code omitted
var json = JsonConvert.SerializeObject(dt, Formatting.Indented);
jsonData = json;
}
}
return jsonData; //return is good

我从 HomeController.cs 调用它。

    public JsonResult GetJsonData()
{
Associate associate = new Associate();
string jsonData = associate.GetAssociateFromDB();
System.Diagnostics.Debug.WriteLine(jsonData); //for testing purposes
return Json(jsonData, JsonRequestBehavior.AllowGet); //need to pass to `Index.cshtml`
}

但是,除非我将方法放在这个 block 中,否则这段代码不会被命中:

    [HttpGet]
public ActionResult Index()
{
GetJsonData(); //if not called here, it never gets hit.

ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application.";

return View();
}

然后,我尝试通过 $.getJSON 方法将它传递给 Index.cshtml,但它从未到达它。

    jQuery(document).ready(function () {
var mydata;
$.getJSON('@Url.Action("HomeController", "GetJsonData")', function(data) {
datatype: 'json'
mydata = data;
console.log(data); //unsure if this works or not.
});

然后我尝试为 jqGrid 提供该数据(这就在上面的代码下面):

 $("#grid").jqGrid({
data: mydata,
datatype: "json",
width: '100%',
colNames: ["Seq ID", "Fund ID", "Name", "Fund", "Bonus", "Allocation", "Blank", "Begin", "End"],
colModel: [{
name: 'seqid',
index: 'seqid',
editable: true,
},....//Code omitted

我似乎无法从 Controller 获取数据到 Index.cshtml。我在博客上看到 IE 8 中的 cache 有问题,我正在测试它,但我很确定这不是我最初的问题。

我已经阅读了 jQGrid 文档并搜索了很多次,但唯一的例子是这种东西是针对 PHP 或在不同的上下文中。我尝试将 [HttpGet] 放在 GetJsonData 方法之上,但也没有用。

同样重要的是要注意我之前没有写过很多(任何)jQuery。

最佳答案

试试下面的代码。

Url.Action('actionname','controllername')

JavaScript:

  $(document).ready(function () {
var mydata;
$.getJSON('@Url.Action("GetJsonData", "Home")', function(data) {
datatype: 'json'
mydata = data;
gridFn(data);
});

function gridFn(data)
{
//here grid code
}

关于c# - DataTable 到 JSON 到 Controller 到 jqGrid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23760189/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com