在我的asp.net应用程序中,我使用Jquery ajax调用将hson数据绑定数据动态地传递给html表。 从page1.aspx,当我点击列表按钮,重定向到page2.aspx和ajax调用make,代码如下,
var xhReq = new XMLHttpRequest();
xhReq.open("GET", '../SVC/Data.svc/GetInventoryTrimSummary/' + valueModel + '/' + valueTrim + '/' + valueStyle + '/' + type, false);
xhReq.send(null);
var jsonObject1 = JSON.parse(xhReq.responseText);
jsonData = jsonObject1.GetInventoryTrimSummaryResult;
$('#dynamictable').append(jsonData);
使用GetInventoryTrimSummary方法在service.cs类中创建表。
public string GetInventoryTrimSummary(string modelId, string trimId, string body_Style, string type)
{
string dynamicOrderTable = "";
DataTable dt = Inventory.dataset.Tables[0];
DataRow[] results = null;
if (modelId == "All" && trimId == "All")
{
dynamicOrderTable = FormOrderTable(dt, modelId, trimId, body_Style, type);
return dynamicOrderTable;
}
}
这个GetInventoryTrimSummary方法在IData.cs类中定义如下,
OperationContract]
[WebInvoke(Method = "GET",
ResponseFormat = WebMessageFormat.Json,
RequestFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Wrapped,
UriTemplate = "GetInventoryTrimSummary/{modelId}/{trimId}/{bodyStyle}/{type}")]
string GetInventoryTrimSummary(string modelId, string trimId, string bodyStyle,string type);
现在在page1.aspx中,如果进行了一些更改并单击按钮,将使用新的数据集集创建会话并重定向到page1.aspx。我调用相同的ajax调用,因为只有表中的列的数据没有差别才会被更改。
但我的问题是,当我第一次获得默认值并显示在表中时,如果我回来使用会话数据,ajax结果集会给我默认结果集而不是会话结果。当我调试我发现,第二次GetInventoryTrimSummary方法本身没有被击中而ajax返回默认值(意味着第一个结果集)。 我在这里失踪了什么。有点卡住了。
此致