2012-06-21 113 views
0

大家好,发送流切换默认情况下

我有我的js文件:

function sendDataToPhp() 
{ 
    theUrl = 'myfile.php'; 
    params = ''; 
    params += 'function=sendData'; 

    params += '&myfield='+someVariableForMyField; 
    $.ajax ({ 
     url: theUrl, 
     data: params, 
     type: "POST", 
     async:false, 
     success: function (data, textStatus) 
     {  
     } 
    }); 

} 

然后在myfile.php

if (isset($_REQUEST['function'])) 
    { 
     $function = $_REQUEST['function']; 

    } 


    switch ($function) { 
     case 'sendData': 
     //code 
     break; 
     default: 
     //code 
} 

有了这个,我要送码流向交换机的sendData案例。

现在在成功,在ajax()我需要将代码流发送到交换机的默认情况。我怎样才能做到这一点?

非常感谢!

+0

只是在params中不发送'function = sendData'它会转到'default',如果你可以将它作为'sendDataToPhp(function_name)'中的一个参数好得多,那么你可以重新使用它有没有它 – tradyblix

+0

有没有什么办法来做我在问什么(在成功的内部,在ajax()流程去默认情况下)?否则,如果您将其设置为'sendDataToPhp('function = sendData')'或'sendDataToPhp('function = dontexist')'< - 在成功之内再次调用它的参数,则必须更改很多代码 – user638009

+0

该函数可重用或什么的,可能不是一个好习惯IMO – tradyblix

回答

0

Switch的工作方式是,如果没有匹配的CASE,那么它会转到DEFAULT案例......所以也许你可以在你的ajax调用中提供function=IdontExistFunction ......或者如果你想在DEFAULT中有一段代码运行,然后最好分开它,并使其成为一个功能,以便您可以根据需要从任何地方拨打电话。

顺便说一句 - 也有GOTO声明 - 不知道你是否可以利用它在你的情况下http://php.net/manual/en/control-structures.goto.php

+0

这是一个好主意,关于IdontExistFunction,但我想没有办法发送参数+ ='功能= IdontExistFunction';在ajax()中取得成功。我对吗? – user638009

+0

goto应该是一个jquery语句,我通过js文件控制流程 – user638009

+0

我从来没有尝试在ajax succes函数内部进行另一个ajax调用 - 也许你可以尝试调用你的JS函数来使用IDontExist param创建另一个ajax调用 - 但我认为你想要实现的任何方法/逻辑都是错误的 – TigerTiger