【问题标题】:Ajax for retrieving data and changing elements based on data retrievedAjax 用于检索数据并根据检索到的数据更改元素
【发布时间】:2017-02-26 00:12:24
【问题描述】:

这更像是一个信息性问题,也许问题的格式不正确,但我不知道如何更好地解释它。

我已经制作了一个控制器,用于从数据库[HttpGet] 中检索数据,我如何使用Ajax 来检索前面提到的数据,如果成功更改div 的颜色?

  [HttpGet]
    public List<AppointmentsDT> ReturnApps()
    {
        List<AppointmentsDT> list = new List<AppointmentsDT>();

        foreach (Appointment a in db.Appointments)
        {
            AppointmentsDT a1 = new AppointmentsDT();
            a1.AppWithCompanyName = a.AppWithCompanyName;
            a1.AppTime = a.AppTime;

            list.Add(a1);
        }
        return list;
    }

我对如何编写正确的 ajax 语法持空白,该语法将根据收到的数据更改相应 div 的颜色,例如,如果数据库中有一家名为 C 的公司和名为 T 的时间那么 div1 会改变颜色吗?

有可能吗?有我可以使用的代码示例吗?就像我说的那样,因为我仍在学习 Ajax,所以我正在画一个空白……任何建议都会有所帮助。 TNX

【问题讨论】:

  • 您发出一个标准的 Ajax 请求并让您的 C# 返回带有适当数据的 JSON。在 JS Ajax 成功回调中,您获取解析该 JSON 产生的对象并说 if (data.companyName === "C") { $("#div1").css("color", "blue"); }.或类似的。
  • 在控制器中它说明我需要表中的哪些数据,控制器好吗?我需要在 Ajax、url、dataType 中包含什么?我应该如何解析 JSON?我从理论上理解,我的语法编写在 Ajax 方面不是最好的,我知道方法应该是 GET 但哪个数据类型?等等@nnnnnn
  • 抱歉,我已经有五年没有使用 C# 了,所以我对那里的最佳实践有点过时了。 JS 方面很简单,StackOverflow 上还有很多其他问题,以及更广泛的网络上的教程,例如this one(我只是通过快速的谷歌搜索找到的,并没有经过准确性审查)。

标签: javascript c# jquery ajax controller


【解决方案1】:

我建议您使用AJAX 调用ASP.NET Web API 并从API 函数调用您的控制器。

你的AJAX 函数可以像这样

$.ajax({
      contentType: "application/json; charset=utf-8",
      type: 'GET',
      url:'api/getValues', //Your API url
      dataType: 'json',
      success: function (result) {
             //Use your logic to change color code here
             },
      error: function (error) {
             alert("error");
             }
     });

success 函数中的结果将有您想要的列表,您可以检查那里的条件来操作您的 div

【讨论】:

  • 就是这样,if 语句中只有 1 个问题为什么我不能使用 &&?因为我使用if(result.Time = "9:00" &amp;&amp; result.Company = "Laakkonen"),它给了我else 语句,而当我只使用result.Time = "9:00" 时效果很好?这是为什么呢?
  • 我找到了关于 && 的解决方案,所以 tnx 对于这个 ajax 语法它工作得很好!!!! :)
  • 很高兴能够提供帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-02
  • 1970-01-01
  • 1970-01-01
  • 2012-07-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多