PDA

View Full Version : سوال: مشكل در دستورات براي جداولي كه به صورت ايجكس فراخواني ميكنم ( عنوان گنگه لطفا مثال رو ببينيد )



MohammadReza.OmidAllah
دوشنبه 14 مرداد 1392, 16:30 عصر
با سلام راستش يه اتفاق اعصاب خورد كن برام پيش اومده صبح تا الان 100 جور كدمو زير رو رو كردم جواب نميده:ناراحت:

ممنون ميشم كمكم كنيد

ببينيد من يه صفحه php دارم پارامترمو بهش ميدم يه سري جدول به صورت زير ميسازه



<table border="1"> <tr class='box'> <td>1</td> <td class='box' data-id='195'> <a class= href="#"><span>ايرانيا ....</span></a> </td> </tr> <tr class='box'> <td>1</td> <td class='box' data-id='268'> <a class= href="#"><span>گلاب ...</span></a> </td> </tr> <tr class='box'> <td>1</td> <td class='box' data-id='437'> <a class= href="#"><span>ريسندگي ...</span></a> </td> </tr> <tr class='box'> <td>1</td> <td class='box' data-id='480'> <a class= href="#"><span>شركت ....</span></a> </td> </tr></table>


بعد اون صفحه رو به صورت ايجكس فراخواني ميكنم توي قالبم با كد زير:


function showTafzili(str)
{
if (str=="")
{
document.getElementById("Gtafzili").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{

document.getElementById("Gtafzili").innerHTML=xmlhttp.responseText;
}
}
document.getElementById("Gtafzili").innerHTML="<img src='images/Loading.gif' alt='loading'/>";
xmlhttp.open("GET","tafzili.php?Code=2&Gtafzil="+str+"&whois="+Code,true);
xmlhttp.send();
}


اين جدول توي يك پنجره popup كه با jqueryui طراحي كردم نشون داده ميشه حالا كه نشون داد با دستورات زير ميخوام محتويات جدولم رو توي تكست باكس هايي كه طراحي كردم تو قالبم بريزم با كد زير كه نميشه :افسرده:


$(document).ready(function() {

$('td').click(function(){
alert(Code);
switch(Code)
{
case 1:
alert(Code);
document.getElementById("koltxt").innerHTML=$(this).find('a').html();
document.getElementById("kol").value=$(this).attr('data-id');
break;
case 2:
document.getElementById("txtmoin").innerHTML=$(this).find('a').html();
document.getElementById("Moin").value=$(this).attr('data-id');
break;
case 3:
document.getElementById("txtgtafzil").innerHTML=$(this).find('a').html();
document.getElementById("gTafzil").value=$(this).attr('data-id');
break;
case 4:
document.getElementById("txtctafzil").innerHTML=$(this).find('a').html();
document.getElementById("cTafzil").value=$(this).attr('data-id');
break;
case 5:
document.getElementById("txtmarkaz").innerHTML=$(this).find('a').html();
document.getElementById("markaz").value=$(this).attr('data-id');
break;
case 6:
document.getElementById("txtdayere").innerHTML=$(this).find('a').html();
document.getElementById("dayere").value=$(this).attr('data-id');
break;
}
});

});


اين كدهام با جداول يا حتي همين جدول اگه توي قالب HTMLم استفاده كرده باشم كار ميكنه و جواب ميده فقط اين جدولي كه با ايجكس ميارمش مشكل داره
alert(Code); رو نوشتم ببينم فقط با اين جدوله مشكل داره يا كلا سورسم غلطه با تمام جدولاي قالبم درست كار ميكنه ولي ايني كه ايجكسه نه ممنون ميشم راهنمايي كنيد .

MohammadReza.OmidAllah
دوشنبه 14 مرداد 1392, 17:24 عصر
بعد كلي مكافات به جوابم رسيدم اينجا هم ميگم شايد به درد كس ديگه اي بخوره

بايد اينجوري رويداد كليكم رو مينوشتم


$('td').live('click',function(){

webtracker
دوشنبه 14 مرداد 1392, 18:47 عصر
درست چون اگه می خوای به صورت پویا عنصر به داکیومنت اضفه کنید باید از on یا live استفاده کنید مخصوصا در jquerymobile .
یک سوال چرا نصفشون رو با js نوشتین نصف دیگرش رو با jquery؟ اون متغییر code هم نمی دونم چطوری آوردین؟