• 締切済み

初心者です。Java scriptでの引数の使いかたについての質問です

初心者です。Java scriptでの引数の使いかたについての質問です 初心者です。Java scriptでの引数の使いかたについての質問です。下記でやりたいことは、 requestText関数の引数02とか03を、java script なかの httpのアドレスの中のabに記入するには どうしたらいいかということです。あるいは、そうしたことが出来るのでしょうか。 <input type="button" value="02" onclick="requestText(02)"> <input type="button" value="03" onclick="requestText(03)"> function requestText(ab){ var ajax = new Ajax.Request("http://www.geocities.jp/abate/ab.html", {method: "GET", onSuccess: gotData}); function gotData(xmlhttp) { document.getElementById("a02").innerHTML = xmlhttp.responseText; } }

みんなの回答

noname#111181
noname#111181
回答No.2

それは prototype.js を使ったスクリプトですよね。 まず、headerタグ内で <script type="text/javascript" src="/js/prototype.js"></script> を記述しているかご確認ください。 次に、prototype.jsを使わない部分がきちんと動作しているか、下記のスクリプトで確認してください <html> <head> <script language="javascript"> <!-- function requestText(ab){ url = "http://www.geocities.jp/abate/" + ab + ".html"; alert(url) } //--> </script> </head> <body> <input type="button" value="02" onclick="requestText('02')"> <input type="button" value="03" onclick="requestText('03')"> </body> </html> これらがクリアされていれば、ご質問のスクリプトは動くはずです。

tonbeisan
質問者

お礼

alertしたら、番号が 02ではなく、2になっているので、「あっ」と思いました。02のままでは行かないんですね、なるほど。文字も試してみましたが、どうもだめなようで。因数を 02から2にしたら、うまくいきました。とりあえずの解決ということです。ありがとうございました。

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

回答しといてなんだが、実はJavaScriptあんまり詳しくないんだ。 <input type="button" value="02" onclick="requestText('02')"> <input type="button" value="03" onclick="requestText('03')"> function requestText(ab){ var ajax = new Ajax.Request("http://www.geocities.jp/abate/" + ab + ".html", {method: "GET", onSuccess: gotData}); function gotData(xmlhttp) { document.getElementById("a02").innerHTML = xmlhttp.responseText; } } これでいかがか。Ajax.Requestの引数は「文字列」になっている。これが「人間から見てURLの形になっている」としても、こんぴーたから見たら文字列でしかない。なので、JavaScriptにおける文字列の結合を使えば良い、のではないかと。

tonbeisan
質問者

お礼

早速ご解答ありがとうございます。 やってみましたが、うまくいきませんでした。 しかし、たしかに理屈はその通りだという感じがするので、どうしてこれでうまくいかないのか。 記述のミスがないかとか、いろいろと細かな点をチェックしていますが、今のところはそういう間違いはないようです。

関連するQ&A