2013-04-02 70 views
0

我有两种形式,我验证并发送到同一页面,之后我需要,对于每个请求,我的回应是不同于PHP文件。所以我的问题,如何找到不同的ajax请求。我试图检测到不同的Ajax请求到相同的文件

if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') 

但是这适用于所有的请求..

 $(document).ready(function(){ 
$("#form1").validate({ 
    debug: false, 
rules: { 

passwordid:"required", 
username:"required", 
password_again :"required", 
password_again:{ 
    equalTo: "#passwordid" 
}, 
email: { 
required: true, 
email: true 
} 
}, 
messages: { 

email: "Please enter your valid email address.", 
username: "Please enter your username", 
passwordid:"Enter Password", 
password_again:"Please enter the same value", 
}, 
    submitHandler: function(form) { 

$.ajax 
({ 
type: "POST", 
url: "action.php", 
data: $('#form1').serialize(), 
cache: false, 
success: function(html) 
{ 

    $(".result").prepend(html); 





    } 
     }); 
    } 
    }); 

$("#form2").validate({ 
    debug: false, 
rules: { 

datepicker:"required", 
hourid1:"required", 
minuteid1:"required", 
dhour:"required", 
dminute:"required", 
    }, 
messages: { 

datepicker:"Please enter your date", 
hourid1: "Enter your time", 
minuteid1:"Enter your time", 
dhour:"Enter your duration", 
dminute:"Enter your duration", 
}, 
    submitHandler: function(form) { 

    $.ajax 
    ({ 
    type: "POST", 
    url: "action.php", 
    data: $('#form2').serialize(), 
    cache: false, 
    success: function(html) 
    { 

    $(".result1").prepend(html); 





} 
     }); 
    } 
}); 
}); 

我只需要一个简单的方法来认同我的AJAX request..any帮助感激..在此先感谢。 。对不起,如果这发生在一个愚蠢的问题...

+0

检查引荐或添加PARAM EQ行动。 php?id = form1 – user956584

回答

1

只是一个给定的名称添加一个隐藏的输入给每个窗体,但不同的价值观,和序列化时,并发送你访​​问的服务器端:

if ($_POST['myFormsName'] == 'form1') { 

} 
+0

ya感谢代码..简单.. – user2234992

1

为什么不只是传递一个额外的参数,指出哪个表单生成请求?这很容易通过在每个表单上添加一个隐藏的输入字段来实现,并且服务器可以使用某种标识符来区分表单。

+0

ya谢谢....没有想到它..再次感谢 – user2234992