如何使用两个$ .post方法非常好

时间:2013-12-20 18:24:43

标签: jquery html mysql ajax

 function ChangeGallery(){
    var GalleryName = $('.SubSubGalleryLock').text();

    /*Send string to Data1.php and include Tags from Database*/
    $.post("Data1.php", {  Sections: GalleryName  },
    function(data){
         $(".IncludeData").append(data);
    }); 

    /*send string to Data2.php and include Events data from Database*/
    $.post("Data2.php",{  GallerySec: GalleryName  },
    function(response){
         /*when i use alert method, this function works very well, why?*/
         alert('SomeString');
     var data = jQuery.parseJSON(response);
         var ImageID  = data[0];
         var ImageSrc = data[1];
     $(ImageID).click(function(){
        $(".LargeImage").attr('src', ImageSrc);
     });
     });
};
Data1.php中的

  /*give data from database1 and print to HTML File*/
  if ($_POST['Sections']) == "String")
  {  $results = mysql_query("SELECT * FROM Table1");
  while($row = mysql_fetch_array($results))
  { echo $row['Tags']; }
Data2.php中的

  /*give data from database2 and Use for events*/
  if ($_POST['GallerySec']) == "String")
  {  $results = mysql_query("SELECT * FROM Table2");
  while($row = mysql_fetch_array($results))
  { echo json_encode($row); }

在客户端,当我使用它时,Data1.php工作得非常好,但Data2.php只有当我写一个警报('Some stringh'); var data = jQuery.parseJSON(response)之后;线,它运作良好,为什么?是什么导致了这个问题?您可以在此页http://www.3dcreate.ir/Pages/Gallery/GalleryShow.php

中看到它

3 个答案:

答案 0 :(得分:0)

您尝试按类名访问该元素,您应该通过id:

进行访问
$('#Chosen_DIV').mouseover(function() {
    //SomeCodes
})
$('#Chosen_DIV').mouseout(function() {
    //SomeCodes
})

这应该有效

答案 1 :(得分:0)

Chosen_DIV是一个ID,而不是类。所以

$('#Chosen_DIV').mouseover(function() {
    //SomeCodes
})
$('#Chosen_DIV').mouseout(function() {
    //SomeCodes
})

必须是'#'而不是'。'

答案 2 :(得分:0)

jQuery不会绑定到被调用后添加到DOM的新元素,除非你在添加它们之后重新绑定或者最初绑定到父元素:

$("#Chosen_Div-parent").on("mouseover", ".Chosen_Div", function(event){
  //Some codes
});

(如果您将拥有多个Chosen_Div元素,请使用类而不是ID)

阅读docs