2014-09-25 4 views
0

У меня есть проблема с jquery.getScriptJQuery getscript игнорировать мой путь

я загружаю свой код с

$.getScript("assets/global/plugins/datatables/media/js/jquery.dataTables.min.js?" + Math.random()) 

, но в консоли браузера я эта ошибка

http://localhost:53968/UI/WebPages/jquery.dataTables.min.js.map 404 (Not Found) 

Этот является структура страниц и сценарий

/UI/WebPages/calling_pages.aspx /UI/WebPages/assets/global/plugins/datatables/media/js/jquery.dataTables.min.js

Так что, если я помещаю прямой

<script type='text/javascript' src='assets/global/plugins/datatables/media/js/jquery.dataTables.min.js'></script> 

все работает, но мне нужно тест, если JS загружаются для предотвращения многократной загрузки

+0

Удалить # // sourceMappingURL в файле js? – Malk

+0

спасибо, что это работает. пока я думаю, что я использую этот способ, но я должен исправить эту проблему в своем коде, потому что плагин не мой, и, возможно, я могу иметь эту проблему в будущем. Спасибо –

ответ

0

от docs:

$.getScript("ajax/test.js") 
.done(function(script, textStatus) { 
    console.log(textStatus); 
}) 
.fail(function(jqxhr, settings, exception) { 
    $("div.log").text("Triggered ajaxError handler."); 
}); 

Я хотел бы изменить параметры запроса из

"...jquery.dataTables.min.js?" + Math.random() 

в

"...jquery.dataTables.min.js?ver=1.10.2" 

, потому что вы не изменяете файл либо приходит обновление, не правда ли. Я считаю, что это лучшее значение для обновления кеша браузеров. Но будьте осторожны, в документах есть подсказка для включения кэширования:

// By default, $.getScript() sets the cache setting to false. 
// This appends a timestamped query parameter to the request URL 
// to ensure that the browser downloads the script each time it 
// is requested. You can override this feature by setting the cache 
// property globally using $.ajaxSetup(): 

$.ajaxSetup({ 
    cache: true 
}); 
Смежные вопросы