PDA

View Full Version : سوال: نمایش چند نتیجه مختلف با ajax



majid1605
دوشنبه 05 خرداد 1393, 14:11 عصر
$("#myid").click(function(){

var name = $(this).attr('alert');
if(name == '1')
{
var request={ id: $(this).attr('fetchid') ,value:'yes' };
}
else
{
var request={ id: $(this).attr('fetchid') ,value:'no' };
}


$.ajax({
url:"my.php",
data:request,
dataType:"html",
type:'POST',
beforeSend: function(){
},
success:function(result){
$("#resultid").html(result);
},
complete: function(){

}
});
});






<a href="#"><i id="myid" class="myclass1" target="????" alert="1" fetchid="<?php echo $_GET['id'];?>" ></i></a>
<?php
//fetch data from database
if( $data === 'm')
{
echo '<a id="resultid" type="button" class="classs1" >'.$mydata ;
}
elseif( $data === 'p')
{
echo '<a id="resultid" type="button" class="classs2" >'.$mydata ;
}
else
echo '<a id="resultid" type="button" class="classs3" >'.$mydata ;
?>
</a>
<a href="#"><i id="myid" class="myclass2" target="????" alert="2" fetchid="<?php echo $_GET['id'];?>" ></i></a>



سلام با استفاده از ajax یک دستور رو به فایل php ارسال می کنم مشکلی با پردازش اطلاعات ندارم مشکل اصلی اینه که پردازش اطلاعات در php نتایج مختلفی میده و این نتایج باید در یک کلاس خاص نمایش داده بشن و نمیدونم چطور بر حسب نتیجه بدست آماده خروجی رو نمایش بدم.
در فایل html اگه مشاهده کنید در ابتدا اطلاعات از دیتابیس فراخوانی و نمایش داده میشه وقتی روی یکی از دوتا لینک کلیک بشه بعد از پردازش به همین صورت دوباره باید نمایش داده بشن همچنین میخوام تووی target="????" هم یک سری اطلاعات نمایش بدم که نتیجه همون پردازش فایل php علاوه بر اون ???? یک مقدار پیشفرض هم دارند.

majid1605
دوشنبه 05 خرداد 1393, 16:11 عصر
قسمت success رو تغییر دادم ولی کار نمیکنه


success:function(result){
console.log(result);
if(result.value)
switch(result.condition)
{
case "login":

break;
case "notallow":
break;
case "show":
if($("#resultid").hasClass("myclass1") )
{
$("#resultid").removeClass('myclass1').addClass(result.resclass ).html(result.value);
}
if($("#resultid").hasClass("myclass2") )
{
$("#resultid").removeClass('myclass2').addClass(result.resclass ).html(result.value);
}
if($("#resultid").hasClass("myclass3") )
{
$("#voteshow").removeClass('myclass3').addClass(result.resclass ).html(result.value);
}
break;
}
},


این قسمتیه که اطلاعات رو بعد از پردازش میفرسته


if( $date> 0)
{
echo json_encode(array("condition"=>"show","value"=>$date,"resclass"=>"myclass1"));
}
elseif( $date> < 0)
{
echo json_encode(array("condition"=>"show","value"=>$date,"resclass"=>"myclass2"));
}
else
echo json_encode(array("condition"=>"show","value"=>$date,"resclass"=>"myclass3"));;