Is it possible to change the "src" attribute of an existing <script>
element using Jquery.attr()? It seemed like a simple way to get JSONP to work but I am not able to make this work for me.
相关问题
- Views base64 encoded blob in HTML with PHP
- Is there a limit to how many levels you can nest i
- How to toggle on Order in ReactJS
- How to fix IE ClearType + jQuery opacity problem i
- void before promise syntax
Whilst, yes, this is possible, you don't need to do this manually as jQuery has good built-in support for JSON-P requests. See the documentation for the
$.getJSON
and$.ajax
methods.It turns out that a script's
src
can only be set once! It is not possible to change thesrc
attribute of an existing<script>
element in the DOM. However, a dynamically created<script>
element can have its source set (but exactly once!)If you're trying to load a script, you could instead use getScript.
http://api.jquery.com/jQuery.getScript/
Or, if you want to change the src for another reason, since script tags can't have id's, you could either use an HTML5 compliant
data-id
attribute, or match using the existing src. Then you could just change the src value using attr. But this may not load the script on all browsers.