onblurイベントとPHPファイルの読み込み

このQ&Aのポイント
  • onblurイベント時にPHPファイルを読み込む方法を教えてください。
  • check.jsを使用して、onblurイベント時にPHPファイルを読み込む方法について教えてください。
  • check.jsを使ってテキストボックスのonblurイベント時にPHPファイルを読み込む方法について教えてください。
回答を見る
  • ベストアンサー

onblurイベント時にPHPファイルを読み込む

<check.js>--------------------- function check(obj){ document.write('<script type="text/javascript" src="check.php?code=' + obj.value + '"></script>'); } ------------------------------- check.jsを読み込んだページ内のテキストボックスの onblurイベント時にPHPファイルを読み込みたいのですが、 check.jsを上記のように書くとページがcheck.phpの内容で再描画されてしまいます(当たり前ですね) check.phpにはGETにてパラメータを渡し、DBへ接続して値を抽出する処理だけさせて 元のjsファイルに値を戻したいのですがどのように記述すればいいでしょうか。

  • SOU48
  • お礼率35% (51/144)

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

  • ベストアンサー
  • bm_hiro
  • ベストアンサー率51% (200/388)
回答No.2

Ajaxライブラリ使えば かんたんに書けます。 かなり 投げやりな書き方でしたが、以下のような感じです。 <html> <head> <meta http-equiv=content-type content=text/html; charset=utf-8> <script type='text/JavaScript' src='./prototype.js' charset='utf-8'></script> <script language='JavaScript'><!-- function axs(par) { new Ajax.Updater("hoge02" , "ajx.php", { method:'post' , parameters:par }); } function del() { $('hoge02').innerHTML = ''; } --></script> </head> <body> <form><input type=button value='ボタン' onClick='del()' onBlur='axs(1)'></form> <div id=hoge02>aaa</div> </body> </html> 別に ajx.php として、以下のようなのもご用意ください。 <? print date("Y-m-d H:i:s"); ?> Ajaxライブラリ prototype.js に関しては ↓をご参照ください。 http://www.openspc2.org/JavaScript/Ajax/ref/prototype.js/index.html http://www.prototypejs.org/download

SOU48
質問者

お礼

Ajaxはほとんど経験ありませんが、書いて頂いたソースを 見ればなんとなく流れはつかめました。 本当に有り難うございます。 ズバリな回答で大変助かりました!

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

普通はajaxを使います

関連するQ&A

  • javascriptファイルは1つに統合できますか

    javascript初心者のため、どなたかご教示いただけるとありがたいです。 html内に外部javascriptファイルを読み込むようにscript要素で記述しているのですが、複数の外部jsを読み込んでおり、可能であればhtml内の記述を簡略化したいと思っております。 <現状> <script type="text/javascript" src="・・・/js/jquery.js" charset="utf-8"></script> <script type="text/javascript" src="・・・/js/jquery.page-scroller.js" charset="utf-8"></script> <script type="text/javascript" src="・・/js/jquery.cookie.js"></script> <script type="text/javascript" src="・・・/js/ui.core.js"></script> <script type="text/javascript" src="・・・/js/jquery.easing.1.3.js"></script> <script type="text/javascript" src="・・・/js/jquery.scrollfollow.js"></script> <script type="text/javascript" src="・・・/js/jquery.bxslider.js"></script> <script type="text/javascript" src="・・・/js/set_slider.js"></script> ・・・ jsに対する基礎的な質問ですが、上記のような複数の外部jsファイルを、1つの外部jsファイルにまとめることは可能なのでしょうか? (単純に1箇所にコピー&ペーストするようなイメージで) お手数ですが、ご教示のほど、宜しくお願い致します。

  • PHP内でjsファイルの関数は使えないのでしょうか

    こんばんは、Webページ制作の勉強で問題にぶつかり、少々お知恵をお借りしたく質問させて頂きました。 あるPHPファイルの中の <!doctype html> <html> //ここにHTMLの記述があるとします。 </html> のHTMLの記述の中に <script src="example_A.js"></script> <script src="example_B.js"></script> のような形で他のページでも使っているJavascriptのファイルを読み込んで使用しようとしたのですが、一部の処理だけが行われないようのです。 そこでjsファイルの中で使えない記述に共通点が無いか確認してみたところ、 $(function() {   //ここに処理 }); のように、関数のみが動作して居ない事が解りました。 そこで質問なのですが、PHPファイルの中では、<html>の中で記述されたスクリプトだとしても関数の中で記述された処理は使えないという事なのでしょうか? また、もしPHPの中でも関数を動作させる方法があれば、教えて頂けないでしょうか。 宜しくお願い致します。

    • 締切済み
    • PHP
  • Jquery.PHPファイルのechoが表示されない

    初めまして、Jqueryのloadについて教えてください。 環境は、vista,eclipse3.5 ,php5.0 JQuery1.4.2,xmapp,IE8です ファイルはすべて同じ階層にあります。 PHPファイル単体で表示させると、 正常にecho内'aaa'が表示されるのですが、 JQUERYを介してみると、 phpファイルの内部echo'aaa'が表示されません。。。 <?php ?>から外しhtmlであればloadすることはできます。 どなたか改善策ご存じでしたら、よろしくお願いしたします。 <!--html--> <html><head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="text.js"></script> <title></title></head> <body> <li><a href="javascript:changetext()">リンク</a></li> <div id="box">ここに表示</div> </body> </html> //text.js function changetext() {$("#box").load("testo.php");} //testo.php <?php echo 'aaa'; ?>

  • PHPでレイティングバーの値を取得

    下記のようなJQuery スクリプトにおいて、 レイティングバーの値を、PHP変数に取得するには どうすればいいのでしょうか。ご指導お願い致します。 ちなみに、 $manzokudo = $_POST['rating']; var_dump($manzokudo); で、ダンプしたところ、中身がNULLでした。 【detail.php】 <link rel="stylesheet" type="text/css" href="jquery.rating.css"> <script type="text/javascript" src="jquery-2.1.3.js"></script> <script type="text/javascript" src="http://code.jquery.com/jquery-migrate-1.1.0.js"></script> <script type="text/javascript" src="jquery.rating.js"></script> <script type="text/javascript"> $(function () { // レーティングバーを有効化 $('.starbar').rating({ cancel: '消去', // 「キャンセル」ボタンのテキスト // ★アイコンをクリックした時の処理 callback: function(value){ // detail.phpに対してレイティングバーの値を送信 $.post( 'detail.php', { rating: value }, function(){ window.alert('「' + value + '」をつけました。'); } ); } }); }); </script> </head> <body> <?php $_POST[] ?> </body> </html>

  • jQueryでPHPのパラメータを使うには

    画像のツールチップを表示させるjQuryのライブラリを導入しました。 ソースをはしょっているので、意味はわからないと思いますが、下記のように、 relのに値に「?no="~"」というパラメータを使用すると動作してくれません。 おそらくjQuery内でPHPのパラメータを使えない事が原因だと思うのですが、 このパラメータをjQuery内で利用するにはどうすれば良いでしょう? /* スクリプト */ <script type="text/javascript"> …………… $("body").append("<p id='screenshot'><img src='"+ this.rel +"' alt='url preview' />"+ c +"</p>"); …………… </script> /* PHPファイル */ <a href="test.php?no=1" class="screenshot" rel="test.php?no=1"><img src="test.php?no=1"></a>

  • *.js ファイルの読み込みについて

    お世話になります。 *.jsファイルを読み込むのに <script type='text/javascript' src='abc.js'></script> とすれば、できます。 これを、 <script type="text/JavaScript"> <!-- src='abc.js; ・・・・・・・・・ ここにabc.js内の関数などを記載 ・・・・・・・・・ //--> </script> と、いう形にできないものでしょうか。 このままだと、abc.jsは読み込まれません。 よろしくお願いします。

  • Javascript外部ファイルの読み込みについて(ブラウザにキャッシュさせたい)

    現在、製作中のサイトにおいて、webページが表示されるまで、5秒~15秒程度かかる事態が発生しています。 該当サイトでは、prototype.js等のjavascriptのライブラリを使用しており、合計で5個のjsファイルを読み込んでいます。 jsファイルの読み込み箇所を削除するとサクサクと快適になるので、jsファイルの読み込みに問題があると考え、jsファイルを圧縮したり(http://dean.edwards.name/packer/等)、ブラウザにキャッシュさせるために<script src=""での読み込み時に引数「?version=1」を追加してみたりしていますが、あまり改善しません。 読み込みの数を減らすため、prototype.jsとjquery.jsを統合するなども試してみました。(統合後のサイズは116KB) 利用環境によってはそれほど気にならない速度なのですが、IE6の環境でかなり重い場合がありますので、改善方法を探しています。 一回目の表示はともかく、2回目以降も毎回トップページ表示に5秒以上かかるのは問題がありますので…。 現時点で原因は、外部jsファイルがキャッシュされず毎回サーバーに読みにいっているために遅くなっていると思うのですが…。 ブラウザに外部ファイルをキャッシュさせる方法は何かないのでしょうか? ちなみに、重くなる環境で、他のサイト(外部JSファイル読み込み多数)のサイトを表示しても、2回目以降は重くなりません。ブラウザのキャッシュの削除も一度試しています。 参考に、現在のスクリプト呼び出し部分を記述します。 ---------------------ソースここから--------------------------- <script type='text/javascript' src='js/prototype-1602-and_jquery.js?version=1'></script> <script type='text/javascript' src='js/js.js?version=1'></script> <script type="text/javascript" src="js/lib/jquery_auto_j.js?version=1"></script> <script type='text/javascript' src='js/scriptaculous-js-181/src/scriptaculous.js?load=effects'></script> <script type='text/javascript' src='js/lightview.js?version=1'></script> ---------------------ソースここまで--------------------------- また、スクリプトはPHPで作っていますので、キャッシュを許可する記述を以下のようにしています。 ---------------------ソースここから--------------------------- session_cache_limiter('private_no_expire'); session_start(); ---------------------ソースここまで--------------------------- また、現状ではjsファイルの読み込みが原因かと考えていますが、それ以外でも改善点などがあれば、それをご指摘頂ければありがたいです。 宜しくお願い致します。 確認環境:windows XP、 IE6 HP作成スクリプト:PHP

  • HTMLファイルと分ける場合について

    JavaScriptを script.js として保存し、 完全にHTMLとJavaScriptを分けたいです。 script.js の中には関数が複数存在しています。 script.js の中では、それらの関数が使われていないです。関数があるだけです。 そこで、 <script src="script.js"type="text/JavaScript"/> などとした場合関数に引数を渡し実行することはできないですよね? パラメータというか、そういうことはできないですか?

  • マスターページでのJavaScrioptファイル

    マスターページとコンテンツページ(aspxファイル)のディレクトリ階層が異なる場合、マスターページにJavaScriptファイルの指定を行うと、生成された画面のソースを見ると、マスターページからの相対パスになっており、JavaScriptのメソッドを実行できません。 どうすれば、コンテンツページからのパスで生成されるようにできますか? ■階層 root ┗Script ___Script.js ┗マスターページ ___マスターページ.master ┗コンテンツルート _┗aspxファイル ______コンテンツ.aspx ■マスターページ <head id="Head1" runat="server"> <script type="text/javascript" src="~/Script/Script.js" charset="Shift_JIS"></script> </head> ■生成されたhtml <head id="Head1" runat="server"> <script type="text/javascript" src="../Script/Script.js" charset="Shift_JIS"></script> </head> 希望しているコード <script type="text/javascript" src="../../Script/Script.js" charset="Shift_JIS"></script>

  • 複数の外部ファイルを参照するにはどうすればいいの?

    22歳男性です。 htmlに以下のように記述していますがうまく動作しません。 <html> <head> <script type=\"text/javascript\" src=\"js1ファイルパス\"></script> <script type=\"text/javascript\" src=\"js2ファイルパス\"></script> </head> <body> ・・・・・・・ 上記のように記述して外部のjsファイルを参照しようとしているんですがうまくいきません。js2ファイルは参照できるんですが、js1ファイルは参照できません。 また、記述順を変えてみると、js1ファイルは参照でき、js2ファイルが参照できなくなります。 この2つのjsファイルを参照するにはどのように記述するべきなのでしょうか?