2012-04-04 6 views
5

Jquery.attr()を使用して既存の<script>要素の "src"属性を変更することはできますか? JSONPを動作させるシンプルな方法のように思えましたが、私はこの仕事を私に任せることはできません。"src"属性の変更<script>

+0

domに新しいスクリプト要素を追加するだけではどうですか。 –

答えて

15

スクリプトのsrcを1回だけ設定できることが判明しました! DOMの既存の<script>要素のsrc属性を変更することはできません。ただし、動的に作成された<script>要素のソースセットは(の場合は1度だけ!)

+2

これは古い答えですが、これをサポートするリンクはありますか?私も同様の問題を抱えており、これまでのところ何もできません。これに関する読書資料は確かに役に立ちます。 – ChickenWing24

3

スクリプトをロードしようとしている場合は、代わりにgetScriptを使用できます。

http://api.jquery.com/jQuery.getScript/

それとも、あなたは別の理由のためにSRCを変更したい場合は、スクリプトタグがIDを持つことができないので、あなたはHTML5を使用することができますいずれかの既存のSRCを使用してdata-id属性、または試合を準拠。次に、attrを使用してsrc値を変更できます。しかし、これはすべてのブラウザでスクリプトを読み込むことはできません。

+0

* "スクリプトタグはIDを持つことができないので、" *あなたがそうでなければ何を考えても間違いないでしょうか? –

3

これは可能ですが、jQueryにはJSON-Pリクエストのサポートが組み込まれているので、手動で行う必要はありません。 $.getJSONおよび$.ajaxメソッドのドキュメントを参照してください。

+1

これは問題ではありません。問題は「スクリプトタグがあらかじめ存在する場合はsrcを変更できますか?」です。 –

+1

素敵な感謝。あなたの質問をもう一度読む。 JSON-Pをやりたい人のように読んでいましたが、手動でやる必要があると思いました。手動で行う場合は、Aramの答えを参照してください。 –

+3

感謝していないのではなく、あなたは間違った質問を解釈しました。問題は、JQでJSONPを実行する方法ではなく、スクリプトsrcを変更するという技術的なポイントでした。あなたの答えは役に立たなかった。 –

関連する問題