PDA

View Full Version : مشکل فراخوانی تابع initialize در googlemap با آزاکس



leila.net
چهارشنبه 05 آذر 1393, 14:29 عصر
با سلام
دوستان من تو یه صفحه از برنامه از googlemap استفاده کردم و فایل kml رو می خونم و نشون می دم .

زمان pageload تابع initiallize اجرا میشه و نقشه به همراه اطلاعات فایل kml نشون داده میشه . بعدا خواستم کاربر فایل kml رو انتخاب کنه و محتوای اون تو صفحه نمایش داده بشه این قسمت رو هم با jquery کار کردم . ولی الان یه مشکلی که هست اینه که بار اول که کاربر فایل دیگه ای رو بغیر از فایل اول انتخاب می کنه محتوای صفحه تغییر نمی کنه و در واقع تابع initiallize فراخوانی نمی شه ولی از سری دوم به بعد ( یعنی وقتی کاربر برا بار دوم فایلی رو انتخاب می کنه ) تابع فراخوانی میشه !!!
و من نتونستم علت این مشکل رو پیدا کنم :
خب کدهام رو به صورت مختصر می ذارم :


<script type="text/javascript">
function initialize() {}
<script/>



فراخوانی :


function BodyLoad() {


$(document.body).attr('onload', 'initialize()');

}


و کلیک کاربر و تغییر فایل و ...


$(document).ready(function() {
var c = document.getElementsByClassName('cities');



$(".cities").click(function (event) {
kmlfile = '/' + this.getAttribute('data-file');
var aNode = c[cityIndex];

google.maps.event.addDomListener(aNode, 'click', initialize);





});
});


یعنی کجای کارم اشتباهه با این اوصاف ؟؟؟ لطفا راهنمایی کنید .
چرا باید یه درخواستی بار اول اجرا نشه و بار دوم به بعد اجرا شه ؟