PDA

View Full Version : مشکل در لود اسکریپت



komeil64
پنج شنبه 07 مرداد 1395, 14:23 عصر
در اسکریپت زیر وقتی این دستورات را اجزا می کنم مشکلی نیست
$(document).ready(function () {

function testAjax(handleData) {
$.ajax({
type: "GET",
url: handleData,
success: function () { alert("ok"); },
dataType: "script",
cache: true
});
}
testAjax("java.js");
var UA = navigator.userAgent;
var dd;
var temp;
var browserVersion = UA.match(/(opera|chrome|safari|firefox|msie)\/?\s*(\.?\d+(\.\d+)*)/i);
if (browserVersion && (temp = UA.match(/version\/([\.\d]+)/i)) != null)
browserVersion[2] = temp[1];
browserVersion = browserVersion[1];
$.getJSON('http://ip-api.com/json/?callback=?', function (data) {
var ipClient = data.query;
var Country = data.countryCode;

$.post('http://localhost:3187/Check.aspx',
{
siteID: 22,
ip: ipClient,
country: Country,
browser: browserVersion,
os: UA
},
function (data) {
alert( data);

var text = data;


var obj = JSON.parse(text);
for (var i = 0; i < obj.tbl_Files.length; i++) {

}
});
});


});


اما وقتی testAjax("java.js"); را داخل for قرار می دم(هموجایی که ستاره هست) و در زیر اومده فانکشن testajax کار نمی کنه جالبه آلرت success رو هم میده ولی کار نمی کنه!!!

$(document).ready(function () {

function testAjax(handleData) {
$.ajax({
type: "GET",
url: handleData,
success: function () { alert("ok"); },
dataType: "script",
cache: true
});
}

var UA = navigator.userAgent;
var dd;
var temp;
var browserVersion = UA.match(/(opera|chrome|safari|firefox|msie)\/?\s*(\.?\d+(\.\d+)*)/i);
if (browserVersion && (temp = UA.match(/version\/([\.\d]+)/i)) != null)
browserVersion[2] = temp[1];
browserVersion = browserVersion[1];
$.getJSON('http://ip-api.com/json/?callback=?', function (data) {
var ipClient = data.query;
var Country = data.countryCode;

$.post('http://localhost:3187/Check.aspx',
{
siteID: 22,
ip: ipClient,
country: Country,
browser: browserVersion,
os: UA
},
function (data) {
alert( data);

var text = data;


var obj = JSON.parse(text);
for (var i = 0; i < obj.tbl_Files.length; i++) {
***************************
testAjax("java.js");
}
});
});


});
ممنون میشم راهنمایی کنید

plague
جمعه 08 مرداد 1395, 11:43 صبح
من نمیدونم این فایل java.js توش چیه ولی شاید چون داری چند بار فراخانیش میکنی باعث میشه اون کتابخونه یا فایل دچار مشکل بشه !
مثلا اگه خوده جی کوئری رو 2 بار توی صفحه ضمیمه کنی کلی مشکل میتونه بوجود بیاره
شما کاری کن که حلقه 1 بار اجرا بشه ببین بازم به مشکل برمیخوری یا نه

در ضمن کدی که بعد از testAjax اجرا میشه و شما با استناد به اون میگید درست اجرا نمیشه رو معلوم نیست کجا گزاشتید و چیه ممکنه جریان sync , async مشکل بوجود آورده باشه

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