使用jquery在不同的地方显示来自php的不同div

时间:2014-01-09 06:05:13

标签: javascript php jquery html

我正在使用jquery发送表单,我想在不同的地方显示来自php页面的html响应。我的意思是,我正在回应不同的div,我想在一个地方展示一个div,在另一个地方展示另一个div。

HTML

 <div id="error"></div>

JS

   success: function(response) 
        {   

    $("#error").fadeIn('slow').html(response);//this displays both divs on same place
        }

php

 if(){
    echo "<div id='alert_one'>Hi there</div>"; 
    echo "<div id='alert_two'>Something</div>";
    }
我可以做点什么吗

    success: function(response) 
        {   

         $("#div_1").fadeIn('slow').html('div_id_from_php');
       $("#div_2").fadeIn('slow').html('div_id_from_php');
        }

    <div id="div_1"></div>
    <div id="div_2"></div>

3 个答案:

答案 0 :(得分:2)

是的,有了这个:

success: function(response)    
{   
   var $divs = $("<div>" + response + "</div>");    
   $("#div_1").fadeIn('slow').html($divs.find("#alert_one").html());
   $("#div_2").fadeIn('slow').html($divs.find("#alert_two").html());
}

或者像这样(可能更干净):

success: function(response)    
{   
   var $divs = $("<div>" + response + "</div>");    
   $("#div_1").fadeIn('slow').empty().append($divs.find("#alert_one"));
   $("#div_2").fadeIn('slow').empty().append($divs.find("#alert_two"));
}

干杯

答案 1 :(得分:1)

当然可以。只需根据您的需要定位div。尝试添加jquery css()方法进行定位。例如:

  。

$( “#div_1”)的CSS( “填充 - 顶部”, “20像素”);

有关详细信息,请参阅:http://api.jquery.com/css/

答案 2 :(得分:0)

你也可以这样做:

PHP上的

if(){
    $resp['div1']=  "<div id='alert_one'>Hi there</div>"; 
    $resp['div2']=  "<div id='alert_two'>Something</div>";
    }
echo json_encode($resp);

jQuery的:

success: function(response) 
        {   
           data = jQuery.parseJSON(response);
           $("#div_1").fadeIn('slow').html(data.div1);
           $("#div_2").fadeIn('slow').html(data.div2);
        }