我正在使用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>
答案 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);
}