JqueryでString(文字)を渡す方法

このQ&Aのポイント
  • Jqueryを利用してaタグのhref属性を使用し、String(文字)を渡す方法について質問しています。
  • 質問者は、aタグのhref属性に「javascript:名前('.$データ.')」と記述し、JQUERYを利用して別のphpファイルに値を渡したいとしていますが、うまくいかないという問題が発生しています。
  • 質問者はこの方法以外にも別の方法があるかどうか尋ねており、環境はjquery1.4とPHP5.0、eclipse3.5であることを記載しています。
回答を見る
  • ベストアンサー

Jquery a href="javascript:名前('.$データ.')">の方法でString(文字)を渡す方法

一部不備ありましたので、再度質問です。。 すみません 初めまして、jqueryを勉強し始めている初心者です。。 a href="javascript:名前('.$データ.')">の方法で データにString(文字)を持たせ、JQUERYを利用して、別のphpファイル(testo2.php)に値を渡し、 そのphpファイル(testo2.php)そのloadで読みたいのですが、うまくいきません この方法ではできないのでしょうか? このa href="javascript:名前('.$String型.')の方法を何とか 利用したいと思ってますので、ご存知の方いましたら、 教えていただけないでしょうか。。。? また別方法があれが教えていただけないでしょうか? (input hidden 等以外のa href="javascript:名前('.$String型.')的な方法) 何度もすみません。。。 何ぶん、勉強初めて、1ヶ月弱のため、不備等がれば、すみません。 環境、jquery1.4, PHP5.0, eclipse3.5 //-----testo1.php <html> <head> <script type="text/javascript" src="jquery1.4.js"></script> <script type="text/javascript" src="tes.js"></script> <title></title> </head> <body> <?php //$id=1;(数字)の場合は値はわたせる、String 型の値の渡し方 //<a href="javascript:名前('.$文字列(String型).')">前のページ</a> //でJQUERYを利用して、別のphpファイル(testo2.php)にを渡し //loadで読みたい。 $id='文字列aaa'; <a href="javascript:value('.$id.')">前のページ</a> ?> <div id="box">ここに値を表示したい</div> </body></html> //----tes.js function value(id) {$("#box").load("php/tt.php",{id:id});} //------testo2.php <html> <head> <script type="text/javascript" src="jquery1.4.js"></script> <script type="text/javascript" src="tes.js"></script> <title></title> </head> <body> <?php echo $_POST['id'];//文字列String型を受けたい。 ?> </body></html>

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

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

よく見ると、tes.jsのjavascriptも間違ってます。 function value(id) {$("#box").load("php/testo2.php",{id:id});} でしょう。 何か、意図してることが、さっぱりわかりません。

okinao
質問者

お礼

本当にありがとうございます。 私もいろいろ試してみます。 yyr446さんいは、感謝しております。 また掲示板で見かけたら、よろしくお願いしたします。 m(_ _)m

okinao
質問者

補足

yyr446さん、ご丁寧にありがとうございます。 「何か、意図してることが、さっぱりわかりません」↓ すみません、説明が下手で。。 PHPでページ分割を作成して <前ページ 次ページ> の様な もの作成してるのですが、 PHPだけでうまくいってもJQUERY通すと少し違う個所があり悩んでました。 実際にはphpファイル内でechoで表示された個所に2つ値をセットして //testo.php $id='文字列aaa'; $id2=2; <div id=box>testo2.phpの結果がほしい</box> echo '<a href="javascript:value('.$id,$id2.')">前のページ</a>'; //testo.js側値を2つ(文字と数字)をtesto2.phpに渡したい。。 function value(id,id2) {$("#box").load("php/testo2.php",{id:id,id2:id2});} //testo2.php <?php $_POST['id'];//文字受けたい。 $_POST['id2'];//数字をうけ --なにか処理させる-- $res='処理の結果' echo '$res'; ?> のような感じで作れたらとおもってます。。 また分かりずらくてすみません。。m(_ _)m 前回の説明のように、すれば、2つの値が渡せるのでしょうか? ご存じの方しましたら、すみません お力を貸していただけないでしょうか?

その他の回答 (1)

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

testo1.phpのphp部分が間違っています。 <body> <?php $id='文字列aaa'; ?> <a href="javascript:value('<?php echo $id ?>')">前のページ</a> <div id="box">ここに値を表示したい</div> </body> こうです。 それから、testo2.phpにjavascriptやHTMLさえ不要です。 <?php header("Content-type:text/plain"); echo $_POST['id']; ?> だけでよいかと だけでも出来ます。

okinao
質問者

お礼

yyr446さん、毎回すみません。。ありがとうございます。。 今回も突っ込みどころ満載の質問で、すみませんでした。。 なんとか、できそうな気がします。。 現在PCのmysqlがクラシュしてして確認とる事できませんが ありがとうございました。 yyr446さには、心よりお礼申し上げます。m(_ _)m また、掲示板みかけたら、おちから添えお願いしたします。

関連するQ&A

  • javascript:名('.$data.')で複数のデータを送る方法,(jqueryのload利用)

    初めまして、jqueryを勉強し始めている初心者です。 jqueryのloadを利用して、PHPでページ分割作成してますが、 javascript:名('.$data.')で複数のデータを送る方法ご存知の方いましたら、教えていただけないでしょうか。。 何ぶん、勉強初めて、1ヶ月弱のため、不備等がれば、すみません。 hidden等でまとめてid作成すると、うまくページ分割ができませんでしたので javascript:名('.$data.')で複数のデータを送る方法を検討しています。。 環境、jquery1.4, PHP5.0, eclipse3.5, mysql5.0 (sql等は問題なく動作してます) //<php側抜粋--testo.php> <html> <head> <script type="text/javascript" src="jquery1.4.js"></script> <script type="text/javascript" src="testo.js"></script> <title></title> </head> <body> <div id="box"></div> <?php $nm=$_POST['nm']; $page_num=$_POST['page_num']; //echo'<a href="javascript:next('.$page.')">次のページへ>></a>'; //↑と1つの値であれば問題なく値をtesto.jsに渡しphploadできます。。 //↓のjavascript:名前('.データ値.')で、2つの値を //testo.jsでphpに渡しloadしたい。 //↓の解決策すみませんがご存知でしたら、教えてください。 //------ここ質問(1)------ echo'<a href="javascript:next('.$page.','.$nm.')">次のページへ>></a>'; ?></body></html> //testo.js----- /*function next(page) {$("#box").load("testo.php",{page_num:page});}  と1つの値であれば、POSTで正常にtesto.phpに渡せますが  2つ値を渡したいので、 おそらく、全然ちがったり、間違えていると思います。。 調べてみましたが、分かりませんでした。。 */ //--質問(2)↓-- function next(page,nm) {$("#box").load("testo.php",{page_num:page,nm:nm});} 質問は上記(1)(2)です。全ソース記載したいのですが、 文字数オーバーのため、記載できませんでした。。 すみません おそらく、不備や、勉強の不足さも感じるとは思いますが、 分かりやすく、ソース等で教えていただければ、幸いです。 すみません。。よろしくお願いいたします。

  • jQuery 記述方法

    今、webサイトを作っていてjQueryを使用しようとしています。 しかし、うまくできません。外部にjavascriptファイルを置いています。 やりたいことは、ナビゲーションのロールオーバーです。 javascriptは初心者なのでどこが間違っているまたは足りないのかわかりません。以下に必要だと思うものを記述しますので分かる方がおりましたら教えてください。 javascriptファイルとjquery-1.6.4.min.jsはhtmlと同フォルダ内にあります。またimgフォルダ内に画像と拡張子の前に_onを付けた画像を入れています。 HTML <head> <script type="text/javascript" src="./jquery-1.6.4.min.js"></script> <script type="text/javascript" src="park.js"></script> </head> <body> <p><a href="index.html"> <img alt="top" height="50" class="navi" src="img/top.gif" width="100" /></a></p> </body> javascript $(function(){ $ ("img.navi").mouseover(function(){ $(this).attr("src",$(this).attr("src") .replace(/^(.+)(¥.{a-z]+)$/,"$1_on$2")); }).mouseout(function(){ $(this).attr("src",$(this).attr("src") .replace(/^(.+)_on(¥.{a-z]+)$/,"$1$2")); }).each(function(){ $("<img>").attr("src",$(this).attr("src") .replace(/^(.+)(¥.{a-z]+)$/,"$1_on$2")); }); ]); です。 よろしくお願いします。

  • 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とjavascriptの競合?

    どなたかお知恵をお貸しくださいませ。 jqueryとjavascriptを混在させたページを作っています。 ファイルは全て同一サーバー内です。 ◆希望ページ構成 <body> <div class="wrap">  <div class="header"></div>  <div class="main">**フロートで左に配置   <iframe></iframe>  </div>   //1.   //jqueryの「iframe-auto-height」プラグインを使って、   //読み込まれた内容に応じてiframeの高さを変えるようにしたい。  <div class="menu">**フロートで右に配置</div>   //2.   //jqueryの「portamento」プラグインを使って、   //画面が縦長になりスクロールしてもこの「メニュー」が   //画面に追従してフロートするように(常に画面上に現れている様に)したい。   //3.   //このメニュー内のリンクから「iframe」内の内容を切り替えたい。 </div> </body> ■ 「1.」「2.」のjqueryは、同時にちゃんと動作しました。   が、「3.」を加えると「1.」が動きません。   「2.」は常に正常に動作します。   「1.」と「3.」が競合しているようなのですが、   私はみなさんが提供してくださっているスクリプトを“切り貼り”して   使わせて頂いている程度の知識しかなく、この問題をどうすれば回避し、   希望のページを作れるのか分からず、どなたかお詳しい方にご教示頂ければ、と思った次第です。  ★「3.フロートするメニューボックスの中のリンクから、    表示する内容に応じて高さが可変するiframeの内容を切り替える」    にはどのようにすればよいでしょうか? ◆HTML記述 <head> <script type="text/javascript" src="jquery-1.6.4.min.js"></script> <script type="text/javascript" src="jquery.iframe-auto-height.plugin.1.5.0.min.js"></script> /// 1.「iframe-auto-height」用。これは<head>内だけでなく、</body>の前部分に置いても動作しました。 <script type="text/javascript"> <!-- function ifr(jpURL){ panel.location = jpURL; } // --> </script>  ///3.「リンクでiframe内を切り替える」用。 </head> <body> ~ ~ <iframe src=".html" name="panel" width="620" height="1500" class="auto-height" scrolling="no" frameborder="0"></iframe>  /// 『切り替え』用に「name」を付け、『autoheight』用に「class」を付けています。  /// フロートの確認用に便宜的に「height」を書いていますが、『autoheight』が動作する際  /// は「height」は無視されています。 <script type="text/javascript"> jQuery('iframe').iframeAutoHeight(); </script>  /// 『autoheight』用スクリプト ~ ~ <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script> <script src="http://portamento.js"></script> <script> $('#menu').portamento({gap: 100}); // set a 100px gap rather than the default 10px </script>  /// 『フロートボックス』用読み込み&スクリプト      </body> 内容は以上となります。 何卒よろしくお願いいたします。

  • jQueryのタブにスクロールバーをつけたい

    jQueryのタブにスクロールバーをつけたい jQueryの「ui.tabs.js」を使ってタブを制作し、「jquery.cookie.js」でタブの内容を記憶し。 さらに、そのタブの中身が設定した枠を超えると「jScrollPane.js」を使って横にスクロールバーがでるようにしたいのですがうまくいきません。 <script src="./js/jquery-1.2.6.js" type="text/javascript"></script> <script src="./js/jquery.cookie.js" type="text/javascript"></script> <script src="./js/ui.core.js" type="text/javascript"></script> <script src="./js/ui.tabs.js" type="text/javascript"></script> <script src="./js/jScrollPane.js" type="text/javascript"></script> <script src="./js/jquery.mousewheel.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function() { $('#container1 > ul').tabs({ event: 'click' ,cookie: { expires: 30 } , cache: true}); $('#fra_sl').jScrollPane({scrollbarWidth:13, scrollbarMargin:9}); }); </script> <body> <div id="container1"> <ul> <li id="tab1"><a href="#tab_categry">タブ1</a></li> <li id="tab2"><a href="#tab_all">タブ2</a></li> </ul> <div id="pane1"> <div id="tab_categry"> <p>中身1(省略)</p> </div> <div id="tab_all"> <p>中身2(省略)</p> </div> </div> </div> </body> 以前同じような質問をされていた方がいたのでそちらも参考にして試してみたのですが→http://okwave.jp/qa/q4819862.html javascriptは初心者なものでよくわかりませんでしたorz どなたかわかる方がいましたら教えてもらえないでしょうか??

  • jqueryのloadで読み込んだページ内でthickboxで画像を表示する方法

    画像表示処理方法で教えて頂ければと思います。 テスト用に2つのファイル(index.html, test.html)を用意しました。 index.htmlで thickboxを使用して画像をクリックすると希望通り (画像がアップ表示)の動作をします。 しかしindex.htmlのloadで test.html読み込んだ時の画像部分が、 target="_self"で押したときの動作になってしまいます。 解決方法、よろしくお願いします。 -----index.html----- <html> <head> <link href="thickbox.css" type="text/css" rel="stylesheet" /> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="thickbox.js"></script> <script type="text/javascript"> <!-- function init(){ $("#Test").load("test.html"); } // --> </script> </head> <body onload="init()"> <div id="Test"></div> <hr> (2)<a href="test.gif" title="" class="thickbox"><img alt="" src="test.gif" /></a> </body> </html> -----test.html----- (1)<a href="test.gif" title="" class="thickbox"><img alt="" src="test.gif" /></a>

  • 同HTML内で複数のjQueryを設置する方法

    Movable Type5で作製しています。 複数のjQueryを使用し、(A)はヘッダーにメニュー、(B)はコメントフォームにテキストをうっすらと出すプラグインを適用させようとしています。 それぞれ単品では問題なく作動するのですが、下記のように記述するとBのみが作動する状態です。 jQueryもjsもよくわからない素人なのでわかりやすくご説明を頂けるとありがたいです。 使用しているものは以下です。 ---------------------------------------- <script type="text/javascript" src="<$mt:Link template="javascript"$>"></script> <script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript">google.load("jquery", "1.3");</script> <script src='http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js'></script> <script type="text/javascript"> var $ = jQuery = jQuery.noConflict().extend(true, $); … </script> <script type="text/javascript" src="<$mt:BlogURL$>js/jquery.updnWatermark.js"></script> <script type="text/javascript"> jQuery(document).ready(function($) { $.updnWatermark.attachAll(); }); </script> <script src='http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js'></script> <script type="text/javascript" src="<$mt:Link template="javascript"$>"></script> <script type="text/javascript" src="<$mt:Link>index/js/jquery-1.1.3.1.min.js"></script> <script type="text/javascript" src="<$mt:Link>index/js/jquery.easing.min.js"></script> <script type="text/javascript" src="<$mt:Link>index/js/jquery.lavalamp.min.js"></script> <script type="text/javascript"> $(function() { $("#1, #2, #3").lavaLamp({ fx: "backout", speed: 800, click: function(event, menuItem) { return true; } }); }); </script> http://okwave.jp/qa/q6602248.html ↑に質問をされた方のは見たのですが、それでもわかりません(同様の質問なのかも不明ですが・・・) 本当にわからないので、宜しくお願いします。

  • jQuery.jsを使ったhtml外部読み込み方法

    JavaScript超初心者です。 何卒ご協力の程よろしくお願い致します!! タイトルの通り、jQuery.jsを使ってページのある部分に外部htmlファイルを読み込みたいと考えています。 以下のページを参考にやってみましたが上手くいきません。 http://blog.sugulab.com/?p=14 やってみたのは下記のような作業です。 まず、下記サイトより「jquery-1.9.1.min.js」ファイルをダウンロードし、「js」というフォルダに「jquery.js」として保存しました。 http://jquery.com/download/ 次に参照ページにならってhead要素内に下記のように記述しました。 <script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript"> <!– $(function(){ $("#leftcontent").load("shopmenu.html"); }); // –> </script> body要素内には<div id="leftcontent"></div>と記述しています。 このleftcontentの部分に、同じ階層にある「shopmenu.html」を表示させたいのですが、何も表示されず困っています。 PHP等の知識は一切ない為、これでいけそうなら頑張りたいのですが・・・ ド素人の為、見当違いのご質問でしたらご容赦ください。 どなたかご教示、アドバイスの程よろしくお願い申し上げます!!m(*u_u*)m

  • jQueryとprototypeの共存

    prototype.jsとjQuery.js、そのプラグインであるjquery.cycle.all.pack.jsを共存させ、データベースから取り出した画像にエフェクトをかけて表示したいと思っています。 ライブラリの共存には'jQuery.noConflict();'を使うところまでは調べたのですが、その使い方がよくわかりません。現在は以下のようにプログラムを書いていますが、jqueryの効果が出ていません。使い方、描き方の間違い等ありましたらご指摘お願いいたします。 <script type="text/javascript" src="./js/prototype.js"></script> <script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/jquery.cycle.all.pack.js"></script> <script type="text/javascript"> <!-- jQuery.noConflict(); function loadHello(){ new Ajax.Request( './php/Search2.php', { onComplete : function( httpObj ){ $('検索結果表示領域').innerHTML = httpObj.responseText; } } );} jQuery(function() {     jQuery(".sample").cycle( { fx:'shuffle', delay: -2000 }); }); // --></script> </head> <body onLoad="loadHello()"> <ul id="sample"> <div id="検索結果表示領域"></div> </ul> </body> </html>