- 1 名前:デフォルトの名無しさん mailto:sage [2005/11/25(金) 14:45:21 ]
- このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。 Ajax使いが優しくコメントを返しますが、 お礼はAjaxの布教と初心者の救済をお願いします。
- 241 名前:デフォルトの名無しさん [2009/01/29(木) 22:47:09 ]
- 刻々と更新されるファイル(test.html)があります。
これをメインのAjax.htmlから読み込むサンプルを書いています。 <meta http-equiv="Content-Script-Type" content="text/javascript" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script language="JavaScript" type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> <!-- $(function(){ update(); window.setInterval(update,10000); //10秒ごとにループ function update(){ $.ajaxSetup({ cache: false }); $("#contents").load("test.html"); } }); // --> </script> こうすると10秒ごとにtest.htmlの内容を<div id="contents"></div>の間に表示しますが 開いたtest.htmlが開かれっぱなしになってしまいます(デバッガで確認)。 loadのサンプルは山ほどありますが、どれもcloseのような処理はしていませんが、 何度も同じファイルをloadするのがそもそも間違いなのでしょうか? こういう時の定石を「ここ嫁」でも結構ですのでご指導いただければ幸いです。
- 242 名前:241 [2009/01/29(木) 22:49:07 ]
- >開いたtest.htmlが開かれっぱなしになってしまいます(デバッガで確認)。
補足です。 最初はtest.htmlが1つ開かれますが、10秒ごとに増えていき、 結果的にはWebブラウザが全く応答しないくらい重くなります。 必要なものは最新のtest.htmlだけですので、これは意図した動作ではありません。
- 243 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 19:24:27 ]
- Ajaxの入門書であーだこーだやったあとにjquery使ったら楽すぎて鼻水出たw
- 244 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 17:00:58 ]
- prototype.jsを使いphpと連携をしていてccc.phpからの返り値がテキストフィールドに戻ってくれないのでご教授ください。
やりたい事はaaa.phpで選択された項目をbbb.jsにてccc.phpにpostしております。 ccc.phpはそのデータを基にデータベースに接続し、値を持ってくるような仕掛けですが、 postテストのため、postされたデータをaaa.phpのテキストフィールドに表示させるだけの仕組みとしてます。 色々調べたのですが、どうやらccc.phpへのPOSTが失敗しているようですがどこが間違っているか不明のため、教えてください。 ▼aaa.php <script type="text/javascript" src="./prototype.js"></script> <script type="text/javascript" src="./bbb.js"></script> </head> <boby> <form action="aaa.php" method="post" name="aForm"> 選択: <select id="task_select" onChange="setData()"> <option value="">選択してください</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> <br> <input type="text" name="select_task" /> <input type="text" name="get_task" /> </form>
- 245 名前:244 mailto:sage [2009/02/20(金) 17:01:52 ]
- 続き
▼bbb.js function setData(){ var param = $F('task_select'); document.aForm.select_task.value = param; new Ajax.Request('ccc.php', { method: 'post', postBody: param, onComplete: showResponse } ); } function showResponse(originalRequest){ $('get_task').value = originalRequest.responseText; } ▼ccc.php <? if($_POST){ print $_POST["param"];}else{ print "NG";} ?>
- 246 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:05:08 ]
- XMLファイルの読み込みのことで質問させてください。
読み込んだ外部XMLファイルの中身を表示するコードなのですが、 IE(ver6でのみ確認)の場合、初めてXMLを取りに行く際には問題ないのですが、 そのページをリロードすると今度は中身を表示できません。 キャッシュされたXMLを読みに行き、その場合にうまく行って無いようです。 (Firefoxの場合はリロードしても問題無し) 下記のコードのどの点がおかしいのかご教授頂きたく思います。 以下コードです。 ◆name.xml (読み込むXMLファイル)◆ <?xml version="1.0" encoding="utf-8" ?> <userlist> <user> <number>1</number> </user> </userlist> 続く...
- 247 名前:246 mailto:sage [2009/02/21(土) 01:08:18 ]
- <html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Load XML file.</title> <script type="text/javascript"><!-- var httpObj = null; try { httpObj = new XMLHttpRequest(); } catch (e) { try { httpObj = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { httpObj = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { ; }}} function $(tagId) { if (document.getElementById) { return document.getElementById(tagId); } else { return document.all(tagId); }} function loadXMLFile() { httpObj.open("GET", "name.xml"); httpObj.send(null); httpObj.onreadystatechange = function() { if ((httpObj.readyState == 4) && (httpObj.status == 200)) { $("result").innerHTML = httpObj.responseXML.getElementsByTagName("number")[0].firstChild.nodeValue; }}} // --></script> </head> <body onload="loadXMLFile()"> <div id="result"></div> </body></html>
- 248 名前:246 mailto:sage [2009/02/21(土) 12:05:07 ]
- すみません、自己解決しました。
こちらのサイトにある下記の内容の通り、send処理のタイミングが原因でした。 f32.aaa.livedoor.jp/~azusa/index.php?t=ajax&p=xmlhttp openメソッドの第3引数にTRUEを指定し、非同期通信でサーバーにリクエストを 送っている場合は、 sendメソッドでリクエストを送信したサーバーからの レスポンスを待って完全にデータの受信が完了してから responseXML/responseTetxプロパティをコールする必要があります。 サーバーからのレスポンスを待たずにsendメソッドをコールしてしまうと 正しくレスポンスデータが受け取れません!
- 249 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 12:43:57 ]
- >>248
そういうコードを書いていたように見えたが違ったのか。 >if ((httpObj.readyState == 4) && (httpObj.status == 200)) { status=300だったりしたのかと
- 250 名前:デフォルトの名無しさん [2009/02/25(水) 18:53:54 ]
- プログラム歴2カ月の俺が悟ったところによると、
JavaScript多用してるシステム組んでる奴って明らかに負け組だよな? 複雑なJavaScript使うならFlashで組んだ方が楽だし早くね? という結論に達したんだが正解だよな?
- 251 名前:デフォルトの名無しさん [2009/02/25(水) 18:57:34 ]
- 言い忘れたがお前らに良いこと教えてやろう。
今度のアクションゲームツクールは作ったゲームをFlash形式で 保存できるぞ。もちろんWebアプリにも応用できる。 お前らもajaxなんて面倒なゴミは捨ててAIRの世界に来るんだ。
- 252 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 22:03:45 ]
- ajax.requestでヘッダ情報の書き換えがうまくできません。
下のJavaScriptのようにして「Referer」や「HTTP_USER_AGENT」を書き換えて渡したいのですが、サーバ側に渡される値は 実行環境がそのまま渡されてしまいます。どのようにしたらRequestHeaderを書き換えられますでしょうか? ■HTML側でprototype1.6.0.3を使ってPHPの出力を表示 <html><head><title>test</title><meta http-equiv="Content-Script-Type" content="text/javascript"> <script type="text/javascript" src="./prototype.js"></script> <script type="text/javascript"> function test(){ var url = 'www.test.com/test/test.php'; var myAjax = new Ajax.Request( url, { method: 'post', requestHeaders: ["Referer","www.yahoo.co.jp/abc","HTTP_USER_AGENT","aaaaaa"], parameters: '', onComplete: showResponse }); } function showResponse(originalRequest){ document.getElementById("idName").innerHTML = originalRequest.responseText; } </script> </head><body><p id="idName">テスト</p> <input id="elementID" type="button" value="ボタン" onclick="test();"> </body></html> ■PHP側ソースでメソッド・USER_AGENT名・Refererを出力しています。 <?php echo $_SERVER['REQUEST_METHOD']."<br>"; echo $_SERVER['HTTP_USER_AGENT']."<br>"; echo $_SERVER['HTTP_REFERER']."<br>"; ?>
- 253 名前:デフォルトの名無しさん [2009/02/26(木) 12:14:58 ]
- >>252
prototypeのライブラリ中ではXML2HTTPなどのCOMを使っている。 それらのコンポーネントではリクエストヘッダの書き換えはできない。 これはマイクロソフトのセキュリティ仕様で、オプションは 用意されているが更新はできないようになっている。
- 254 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 20:14:24 ]
- prototype.jsを組み入れたら、ie時だけ読み込みに異常に時間がかかります。
15秒してやっとloadに来るぐらい。 これは改善できますか?
- 255 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 22:33:20 ]
- >>254
localでも全く変わらない ie7がフリーズしたみたいになって15秒後に戻ってくる cpu負荷は上がってないしなんでだろう? この辺と同じなんだろうけど直ったのかなあ? detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1217551657
- 256 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 19:36:08 ]
- (´・ω・) カワイソス・・・
- 257 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 18:24:34 ]
- IE8でも改善されない・・・orz
- 258 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 13:15:33 ]
- ダメ
- 259 名前:デフォルトの名無しさん [2009/04/18(土) 19:58:06 ]
- prototype.js の1.6.0.3を使っているのですが、Diaolog.alertを使おうとしたらDialogが未定義と怒られてしまいました
prototype.jsのDialogはどこにあるのでしょうか?grep しても見つかりませんいでした。 もしかしてver 1.6.0.3ではDialogは別の名前に変わったとか・・・ ご教示頂けると幸いです><
- 260 名前:デフォルトの名無しさん [2009/04/18(土) 20:03:13 ]
- アッー!じゃあああああああああああああああああああああああああああああくす
- 261 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 22:46:17 ]
- >>259
これ? prototype-window.xilinus.com/
- 262 名前:デフォルトの名無しさん [2009/04/19(日) 00:39:43 ]
- >>261
レスどもです。 なんか・・Macのウィンドウみたいのが出てきたのですが・・、これがver1.6.0.3のDialogなんでしょうか?? クラスもDialogじゃなくてWindowになっていますが・・もっと簡易な感じのDialogはなくなっちゃったんですかね・・?
- 263 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 00:54:18 ]
- >>262
さあ。 俺ならjQuery。たしかシンプルなのを見たことがある。 最近流行りだしすぐ見つかると思う
- 264 名前:262 [2009/04/19(日) 01:41:25 ]
- 分かりました。prototype windows というのが prototype.jsとは別にあるんですね・・。
その中のwindow.jsにDialogが定義されてました。 自分もjQuery使いたいんですが、業務でprototype使うんですよね。 ありがとうございましたm(_ _)m
- 265 名前:デフォルトの名無しさん [2009/04/19(日) 20:31:43 ]
- 質問させてください。
Ajaxでpostして、サーバから返ってきた結果がエラーだった場合の処理分けをしたいのですが、そもそもAjaxでのレスポンスのエラーは、何をもってエラーとしているのでしょう? サーバからどういう内容のエラー情報を返せばいいのかわかりません。アドバイス頂きたく。。m(_ _)m
- 266 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 20:41:18 ]
- HTTPステータスコード500 (Internal Server Error)を返すとか、
HTTP 200でも内容で判別可能にするとか。
- 267 名前:デフォルトの名無しさん [2009/04/19(日) 21:24:46 ]
- あ、なるほど自分で適宜変えることもできるわけですね。
ありがとうございますm(_ _)m
- 268 名前:デフォルトの名無しさん mailto:sage [2009/06/18(木) 13:23:26 ]
- readyState == 4
status == 200 の時に responseXML がパースエラーになって responseText が途中で途切れてるん だけど、サーバー側に問題があるのかな?
- 269 名前:デフォルトの名無しさん [2009/10/23(金) 02:49:05 ]
- ここ初めてなのですが、質問させて下さい。
正規表現でURLをマッチさせるとき、/http:\/\/www\.yaho\.co\.jp\//みたいに /をバックスラッシュでエスケープするのが見難いのですが、回避方法ありますでしょうか。 例えばperlの場合の m!www\.yaho\.co\.jp/! という表記法のようなものを 捜しています。宜しくお願いします。
- 270 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 17:37:28 ]
- >>269
つ 正規表現 Part6 pc12.2ch.net/test/read.cgi/tech/1241537764/
- 271 名前:270 mailto:sage [2009/10/23(金) 17:53:03 ]
- ん?エスケープ使いたくないという事か
D言語なら文字列リテラル使って エスケープ無効化出来るが r"文字列" やっぱりAjaxでて事か… スレチすまそorz
- 272 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 03:47:21 ]
- >>269
new RegExp("文字列") は?
- 273 名前:デフォルトの名無しさん [2009/10/25(日) 00:28:13 ]
- >>272
ありがとうございます。 「まとめ」 Ajax(というかJavascript)では、以下のように書きます。 rgex = new RegExp("www\.yaho\.co\.jp/"); str.match(rgex);
- 274 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 00:40:16 ]
- greyboxで別のドメインのページを表示しそのページから呼び出し元のjsを起動し、
呼び出し元のフォーム(hiddenとか)を操作ってセキュリティ上できない とかかいてあったんですが、これってどうにかしてできませんか? 別ドメインってのは不可避で、jsはgreyboxの方においてもいいです。 お願いします。
- 275 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 23:33:02 ]
- >>274
ブラウザのセキュリティの問題。セキュリティレベルを落とせばできるよ。 ただ、全くできないというわけでもない。 mod_rewriteで別ドメインを自分のドメイン内にさもあるように偽造したり 別ドメインに設置したflashをかましてアクセスしたり iframeプロクシでアクセスとか結構ある。 今だとこれかな? docs.dojocampus.org/dojo/io/iframe
- 276 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 14:36:14 ]
- test
- 277 名前:デフォルトの名無しさん [2010/05/24(月) 11:19:09 ]
- Ajaxスレで聞くのが妥当なのかどうか微妙ですが質問させてくださいませ。
Webアプリケーションの開発をすることになったのですが、 ASP.netとAjaxで利点・欠点はありますか? 私個人としては↓の様に考えておるのですが… ASP.net (利点)コーディング量が少ない (欠点)自由度が低い Ajax (利点)自由度が高い (欠点)コーディング量が多い これまでVC++&VBを使ってデスクトップアプリを開発してきたので Java Scriptについては門外漢で、いまいちよくわかりません… 質問の意味が通じないかもしれないけれどアドバイスplzです。
- 278 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 12:35:36 ]
- >>277
その二つは比較するものなのか? ASP.netでもAjaxは使われているだろうに。
- 279 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 12:44:32 ]
- >>277
質問からするとWebアプリについて門外漢っぽいけど? まずVSEE落としてきて.netでWebアプリ作ってみな んで自分が何処まで出来るか把握してからAjaxを選択するか考えた方がいい どの立場だか知らんが、Webアプリ経験者(出来れば.net)を早くプロジェクトに入れる事を薦める 協力会社使うなら VBできる≠VB.net出来る は肝に銘じておけ
- 280 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 13:10:56 ]
- >>277
それでいいよ
- 281 名前:デフォルトの名無しさん [2010/05/24(月) 13:51:16 ]
- 皆様
素早い返答ありがとうございます。 >>278 ASP.netでC# or VBで書いたコードをAjaxに変換するということらしいので ASP.netでの制限がそのまま効いて来ると考えたのがどうでしょう? もちろんソースコードに追加すればAjaxでしか使えない機能は追加できると思うのですが。 >>279 おっしゃる通り全くWebアプリを触ったことはありません。 これまでVS2005&MFC or VBで開発を行ってきたので ASP.netの方は特に詰まることもなく動かすことができているのですが。 Ajaxの方が色々できるのは分かっているのですが 今すぐ使えるASP.netと調査が必要だが高機能を実現可能なAjax、どっちの方がコスト的によいか思案中です。 あまり規模の大きいプロジェクトではない&その他諸々の事情からよそから人を入れられる状況ではないので。 まだ具体的な点を全く詰めていないので、抽象的な質問になってしまいました… 納期もタイトではないのでとりあえずAjaxについてもう少し詳しく調べてみます。 >>280 ありがとうございます。
- 282 名前:281=277 [2010/05/24(月) 14:05:29 ]
- 名前欄書き忘れてました。
色々と書き連ねてしまいましたが結局のところ疑問点は @ASP.net⊂Ajaxなのか? Aこれらを使い分ける基準の様なものは存在するか? という2点に集約されると思います。
- 283 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 15:14:17 ]
- 基準もなにも ASP.net と Ajax はまったく別物
- 284 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 15:15:52 ]
- >>281
あなたのレベルならAjaxに手を出さない方が賢明でしょう
- 285 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 17:23:43 ]
- ASPの読み方をいつも忘れるAjaxユーザーな俺
アプリケーションサービス…プロトコル?
- 286 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 18:13:26 ]
- >>284で終了ですね
- 287 名前:281 [2010/05/24(月) 20:08:50 ]
- >>283,284,286
ですね。ありがとうございます。
- 288 名前:デフォルトの名無しさん [2010/06/09(水) 13:50:25 ]
- new Ajax.Request(url,
{ method: 'get', onSuccess: getData, onFailure: showError } ); function getData(data) { var item = data.responseXML.getElementsByTagName('Member'); for(i = 0; i < item.length; i++) { ... } } とすると、MozillaやらOperaやらではうまく動く(for文の中身を実行する)のに IE(6,7)では動いてくれないのですが・・・ getElementsByTagNameの直後にalert(item.length)とするとIEでは0が表示されます。。。 どうやらエラーがでてるわけではなさそうだけど、何故か実行されません>< XMLファイルはperlで動的に作成していて、だいたいこんな感じです <Response> <Members> <Member> <Name>NAME</Name> <Comment>〜〜</Comment> ... </Member> ... </Members> </Response> 何が原因でしょうか><
- 289 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 02:55:05 ]
- >>288
多分IEでXML自体がが正しく取得できてないんだろう URL直接叩いて、IEでXML表示してみれば
- 290 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 09:32:59 ]
- XML宣言が無い
|

|