可以根据 if 语句更改 $.post url 吗?

Possible to change the $.post url based on an if statement?

我为我的无知提前道歉,我对jquery和php还是很陌生。如果我想做一些可怕的事情,请告诉我。话虽如此,这就是我正在做的事情:

以下脚本运行正常,它只是我 'createLogin.js' 的一个小片段。

在整个脚本中,有许多对 php 文件的调用,如下所示:

$.post( 'verifyUserNo.php' ,  //this is url is what I want to change
{
    No   : trimmedUserNo ,
    Name : companyName

} ).done( function( verifyUserNo ) {

            if ( verifyUserNo  == "Not a valid customer name or code" ) {

                console.log( "The Company Code Entered Is Not Authentic" ) ;

            } else
            if ( verifyUserNo == "valid" ) {

                console.log( "The Company Code Entered Is Authentic" ) ;


             $.post( 'compareUserName.php' ,   //This post will be the same 
                                               //regardless of user level.
             {
                 newName : desiredName

             } ).done( function( data ) {

                 if (data == "taken") { alert('Choose another username') ;}
                 else if (data == "available") {

                     $.post( 'removeUserNo.php'   //This one needs
                                                  //to change as well

虽然它按原样工作,但我添加了一个条件,其中正在创建的用户类型是根据脚本前面从我的数据库中提取的数字计算的。即

var usrLevel = 2  //could is dynamically set to any int greater than 0 and less than 5.

现在,如果 usrLevel == 2 那么上面的脚本就是我想要执行的。然而,

如果usrLevel == X //where x is not 2我要换

$.post( 'verifyUserNo.php'$.post( 'verifyUserAth.php' 因为级别为 3 的用户的数据存储在我的数据库中的单独 table 中,而不是级别为 2 的用户。

没有将脚本的其余部分嵌套在 if/else 语句中。我正在尝试将上面的 url 更改为针对 usrLevel 的每个值指向不同的 php 文件,因此基本上有 4 种可能性。

由 tic 解决 - 见下文

var url = (usrLevel === 2) ? 'verifyUserNo.php' : 'verifyUserAth.php';
var data = { dataIwantToSend: 3 };
$.post(url, data, function(response) {
   //Do this when complete
});

编辑:

用户要求使用具有 4 种可能性的三进制。肯定是:

var url = (x === 1) ? 'myurl4' : (x === 2) ? 'myurl3' : (x === 3) ? 'myurl3' : 'myurl4';

尽管此时它变得更难阅读,但 switch case 可能会更好,因为如果 none 个案例匹配,您可以清楚地抛出错误。

var url = null;
switch(x) {
    case 1:
        url = 'myurl4';
        break;
    case 2:
        url = 'myurl3';
        break;
    case 3:
        url = 'myurl2';
        break;
    case 4:
        url = 'myurl1';
        break;
    default:
        throw 'My error';
}

或者只是一个简单的 if/else if/else