• ベストアンサー

jQueryのloadで外部HTMLを読みたい

jQueryのloadで外部HTMLを読みたいのですが、うまくいきません。 原因は外部HTMLがshift-jisで作成されているからのようです。 Win IE6では完全に表示されず、 Win Firefoxでは文字化けを起こし、 Win Chromeでは正常に動作しました。 なお「外部HTMLはshift-jisのまま」「サーバ上で動作するプログラム(PHP,Perl,Ruby等)は使用しない」方法で、解決したいです。 ecl.jsの利用なども考えましたが、私には難しかったようです…。 何かご存知の方がいらっしゃればお教えください。 よろしくお願いいたします。

  • AJAX
  • 回答数1
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

混在している限り無理だと思います。 両方(呼び出し側HTMLと外部HTML)とも <meta http-equiv="Content-Type" content="text/html; charset=Shift-jis"/> を指定して、かつ両方ともShift-jisで保存してあれば、そんなに不具合 はでないはずです。(両方ともShift-jisにしないのがベストですが)

eye-eye
質問者

お礼

ありがとうございます。 HTMLをもう一度見直してみます。 ありがとうございました。

関連するQ&A

  • JQueryでのloadの動作がFirefoxで動かなくて困っています

    JQueryでのloadの動作がFirefoxで動かなくて困っています。 サイトのheaderとfooterを外部htmlにして、JQueryのloadで呼び出し指定のdivに出力するようにしたいのですが、IEでは上手くいきましたが、FFでは全く動きません。 $(document).ready(function(){ $("#header").load("../js/header.html #header"); $("#footer").load("../js/footer.html #footer"); });

  • jQueryのloadで上の階層の外部HTMLを読みたい

    jQueryのloadで上の階層の外部HTMLを読みたい 同じ階層内は問題なく読み込めたのですが、上部階層のファイルが読み込めません。 記述は $("#sub_header").load("../header.html"); たぶんこれが間違っているんだと思うのですが検索してもわかりませんでしたので、 質問させて頂きました、よろしくお願いいたします。

  • jqueryのloadで読み込むとjsが動作しない

    jqueryの「load」を使ってajax通信を行おうとしているのですが、ロード先のjsが動作してくれません。 具体的には掲示板を作っていて、コメント入力のボタンをクリックすると、ロード先のHTMLが表示され、字数カウントのあるコメント入力欄が出現するという事例です。 コメント入力欄を読み込むことはできても、字数カウント(twitterのカウントのイメージ)部分が上手く動いてくれず困っています。(もちろんロード先を単体で動かした時には字数カウントは正常に行われます。) またあらかじめロード元に対象のjsを記入していても、上手くカウントされません。 このような場合の対処法をご存知の方は教えてください。 そもそもajaxを用いたプログラムを作成すること自体が始めてですので、根本的に使い方が間違っていましたら、恐縮ですが正しい使い方もご教授願います。

  • Jqueryのajaxを用いてHTMLの読み込み

    こんにちは。 Jqueryのajaxで広告向けのJavaScriptが記述されたhtmlを取得し、関数【$("#ID").html(htmlソース);】を用いて、HTMLを読み込んだ際に、それに記述されているJavaScriptが動作してくれません。 読み込むHTMLに記述されているJavaScriptは以下です。 <script type="text/javascript" src="//xml.affiliate.rakuten.co.jp/widget/js/rakuten_widget.js"></script> ご存知の方がいらっしゃいましたら、教えて頂きたいです。

  • JQueryでのAJAXで困ってます

    最近AJAXを勉強しようと思い、JQueryに手を出しました。 JQueryで画面遷移無しでdivで作ったメニューを選択して内容を指定したdivに表示させようと思っているのですが、 JQueryでのloadの動作がブラウザの違いで異なる動きをするので困ってます。 IEでは内容が表示されて、新しく表示した部分のJavaScriptが正しく動くのでいいのですが、 Firefox、Operaでは新しく表示した部分のJavaScriptが動作しません。 Chromeでは新しく表示した部分のCSSでさえ適用されません。 IE以外でも正しく動作させるにはどうしたらいいでしょうか? ご回答、よろしくお願いします。

    • ベストアンサー
    • AJAX
  • HTMLファイルのインクルードで文字化けしてしまう

    下記のサイトを参考にHTMLファイルのインクルードを試したところ、 インクルードされた側のHTMLで文字化けしてしまいます。 http://tani.dank-hearts.com/2008/03/javascripthtml.html ↓の文字コード指定を記述してもダメでした。。。 <meta http-equiv="content-type" content="text/html;charset=shift_jis"> <script type="text/javascript" src="js/ajaxcodedisplay-or.js" charset="shift_jis"></script> 原因がわかる方いらっしゃいましたら、 ご教授お願いいたします。

    • ベストアンサー
    • HTML
  • javascriptのalertで文字化けが解消されません。(外部js

    javascriptのalertで文字化けが解消されません。(外部jsファイル読込による) htmlファイル <meta http-equiv="Content-Script-Type" content="text/javascript"> <script language="JavaScript" src="**/**.js" charset="shift_jis"></script> いろいろ調べまして、charset="shift_jis"を指定したり、utf-8にしましたがうまくいきません。 jsファイル function testalert() { alert('テスト'); } ご教授をよろしくお願いします。

  • JavaScriptの外部ファイル読み込み

    JavaScriptの外部ファイル読み込みについてご教授下さい。 現在、Webサイトを作ろうとPHPとJavaScriptをレンタルサーバーにアップしたのですが、 ローカルではPHPから外部ファイルのJavaScriptを読み込めるのに、 サーバーにアップするとPHPからJavaScriptを読み込めなくなってしまいます。 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>TEST</title> <meta charset=utf-8" /> <script type="text/javascript" src="./js/jquery-1.4.2.min.js"></script> ・・・ 上記のようにしてもjquery-1.4.2.min.jsが読み込まれず、jQueryが使えません。 FireBugでスクリプトを確認すると以下のようなエラーが出ていました。 1Failed to load source for: http://xxx.my-sv.net/js/jquery-1.4.2.min.js ちなみに以下のようにJavaScriptファイルを開こうとするとブラウザは真っ白なのですが、 http://xxx.my-sv.net/js/jquery-1.4.2.min.js テキストファイルに変更したものだと中身を見ることができました。 http://xxx.my-sv.net/js/jquery-1.4.2.min.txt ブラウザはFireFox3.0.11とIE8.0の両方でダメでした。 なぜJavaScriptファイルだけ読み込めないのでしょうか。 ご教授お願いいたします。 ※ちなみに、別のレンタルサーバーにアップロードしたら問題なく読み込めました。 しかし、そこにはDBがなかったので、なるべく今のレンタルサーバーを使いたいのです。。

  • jQueryでloadした部分に.jsが効かない

    jQueryでloadした部分に.jsが効かない indexなどのページに、別のhtmlで作ったページをjQueryのloadで読み込んでいますが、 読み込んだ部分に、jQueryや他のjavaスクリプトが適応されないページがあり解消ができません。 問題点としましては、同じjavascript、同じhtmlを読み込んでいるはずなのに、 A.html、B.htmlにおいて動作が違うと言う点です。 具体例としましては、 A、Bは全く同じjQueryとロールオーバー用javascript(smartRollover)、ヘッダhtml、サイドhtml、フッタhtmlを読み込み、 内容部分だけ違うという程度ですが、 A.htmlではページ内全てロールオーバーが可能、 B.htmlでは内容部は可能、load読み込み部は不可能です。 A内容、B内容には量的にかなり差があり、比較でA>>>Bです。 そういった経緯から試しにAの内容を空にしてみると、Aも動かなくなりました。 上の結果から量が多いページだと適応されると判断し、結果としてload読み込みのタイミングでは? と思っておりますが、自分では解消することができませんでした。 ちなみに使用しているjqueryはjquery-1.4.2.min.jsです。 この場合どのような解消方法、または別の問題点が考えられるのでしょうか? どなたかに助言を頂きたく思いますので、宜しくお願いいたします。

  • jqueryの組み込みが出来ません…

    jqueryのダウンロードサイトから最新番(current?)のjquery-1.8.2.min.jsをダウンロードして、head間に組み込みして、buttonをクリックしたら非表示範囲が表示されるという動作を練習しているのですが、機能してくれないです(涙 何がいけないのかさっぱりわかりません…。 jsファイルを外部かしてみたり、bodyとhtmlタグの間に記述してみたりしたのですが、それでも動作してくれません…。 何がいけないんでしょうか?? 下記にソースを書いておきますので、わかる方いらっしゃったらご教授おねがいします<m(_ _)m> <!DOCTYPE HTML PUBLIC > <html> <head> <title>notitle</title> <meta charset="shift_jis"> <meta http-equiv="content-style-type" content="text/css"> <meta http-equiv="cntent-script-type" content="text/javascript"> <meta name="keywords" content=""> <meta name="description" content=""> <script type="text/javascript" src="./jquery-1.8.2.min.js"></script> <script type="text/javascript"> $("button").click(function(){ $("p").show(slow); )}; </script> <style type="text/css"> <!-- *{ margin:0px; padding0px; outline:none; } p { width:200px; height:200px; background:red; display:none; } --> </style> <!--[if it IE9]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> </head> <body> <button>Show it</button> <p></p> </body> </html> あのなめらかな感じで動作させてみたいんです。

専門家に質問してみよう