【问题标题】:can we call ajax method in else part of function? [closed]我们可以在函数的 else 部分调用 ajax 方法吗? [关闭]
【发布时间】:2013-09-18 16:25:18
【问题描述】:

我知道这是一个非常基本的问题,但是

尽管代码可以正常工作,但这是一种好的做法吗?

我正在从事 mvc 项目,我只需要确认这样做是否是一个好习惯?

代码 .cshtml

$(document).ready(function () {
    var serviceURL = '/AjaxTest/FirstAjax';
    if(serviceURL = null ) { alert ("BANG! error")}
    else {
        $.ajax({
                type: "POST",
                url: serviceURL,
                data: param = "",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: successFunc,
                error: errorFunc
        });
    }
}

请分享你的 cmets。

【问题讨论】:

  • 在尝试执行需要设置的操作之前确认您拥有数据是否是一种好习惯?这不是有点不言自明吗? ;-)
  • 是的,您可以在 else 部分调用 ajax,调用 ajax 方法时也没有任何限制。这仅取决于如何使您的代码更具交互性。
  • 好吧,我只是一个初学者.. 并尝试了解一些我在谷歌上找不到的东西谢谢 :)

标签: asp.net-mvc jquery asp.net-mvc-4


【解决方案1】:

我非常喜欢每个函数一个函数。如果您正在路由逻辑,则没有理由不在函数中“隐藏”该 ajax 调用:

$(function () {
     var serviceURL = '/AjaxTest/FirstAjax';
     if(serviceURL != null ) { 
         CallServiceAsync(serviceUrl);
     else {
         alert ("BANG! error")} 
     }
}

function CallServiceAsync(serviceUrl) {
   $.ajax({
                type: "POST",
                url: serviceURL,
                data: param = "",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: successFunc,
                error: errorFunc
            });
}

为了代码的可读性,我喜欢隐藏冗长的对象调用

【讨论】:

  • 非常感谢这对我来说很有意义..给出了完美的答案,而不是仅仅做了一些 cmets :)
猜你喜欢
  • 2012-03-31
  • 2012-07-08
  • 1970-01-01
  • 1970-01-01
  • 2013-04-17
  • 2016-12-06
  • 1970-01-01
  • 1970-01-01
  • 2011-04-08
相关资源
最近更新 更多