gpt4 book ai didi

jquery - 在 jQuery 中访问模型对象

转载 作者:行者123 更新时间:2023-12-01 06:31:58 25 4
gpt4 key购买 nike

我有一个模型,Customers,其中有一个列表属性,PayHistory。我需要在 ASP.NET MVC (C#) 应用程序中使用 jQuery 将表与 PayHistory 对象绑定(bind)。

我使用 jQuery 绑定(bind)表格:

<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td>
<div id="PaidDate">
</div>
</td>
<td>
<div id="PaidAmt">
</div>
</td>
</tr>
</table>

<script type="text/javascript" language="javascript">
$(document).ready(function() {
//Initialize the dynamic Value;
_dynId = 1;
var data= '<%= Model.PayHistory %>';
if (data != null) {
for (i in data) {
var pay= data[i];
$('#PaidDate').append('<div id="PaidDate' + _dynId + '" style="height:20px;padding-left:10px;">' + '<label>' + pay.paidDate+ '</label>');
$('#PaidAmt').append('<div id="PaidAmt' + _dynId + '" style="height:20px;padding-left:10px;">' + '<label>' + pay.PaidAmount + '</label>');
_dynId += 1;
}
}
});
</script>

在上面的 HTML 中,我尝试在 jQuery 中访问列表对象 PayHistory,但它给出了对象的类型。

如何访问 jQuery 中的对象来绑定(bind)上面给出的 HTML 中的表格?

最佳答案

您必须做更多的工作才能将数据转换为 JavaScript 可以理解的形式。最简单的方法是将对象中的数据编码为 JSON string ,然后将其发送到 data 变量。

您可以手动执行此操作(通过创建执行此操作的类的方法),或者由于您使用的是 ASP.NET MVC,因此您可以使用 Json method 。但是,这必须在 Controller 而不是 View 中完成。因此,我会将其添加到您的模型对象或通用 View 数据中。它可能作为 Model 对象的属性存在,只需对原始值调用 Json 方法并返回它。

C#

public string JsonPayHistory
{
get
{
return Json(PayHistory);
}
}

JS

var data = '<%= Model.JsonPayHistory %>';

您将需要查看返回的字符串。它将采用 JSON 格式,并且必须进行评估。您可以通过添加以下内容来做到这一点:

data = eval(data); // usually a bad idea

data = JSON.parse(data); // may require a library if browser doesn't support it

现在,您应该拥有一个与 C# 对象类似的对象。您可以循环它并按名称引用属性。如果您提供 PayHistory 对象的基本结构,我可以给出更好的示例。

关于jquery - 在 jQuery 中访问模型对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1820559/

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