1read 100read
2013年03月Web制作32: くだすれAjax(超初心者用) (498) TOP カテ一覧 スレ一覧 2ch元 削除依頼
【アドウェイズ】Adconmatch専用スレ【ジャネット】 (284)
[MSN・Yahoo!等]■ロボット型検索エンジン46■ (414)
Flash MX登場 (584)
【Web制作管理】自治スレッド 2 (502)
サイト管理人にありがちなことpart.1 (389)
【パク】ソース見てんじゃねーよ!!ウワァァァン【覗き】 (467)

くだすれAjax(超初心者用)


1 :2005/09/22 〜 最終レス :2013/03/07
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
Ajax使いが優しくコメントを返しますが、
お礼はAjaxの布教と初心者の救済をお願いします。

2 :
んだとこら!

3 :
リンクぐらい貼ってよ

4 :
そもそも漏れはJavaScriptの使い方が分らない。
色々試すが結局xsltで整形して終わり。orz

5 :
お、良スレのヨカン。手持ちのネタ投下しとく。
XMLHttpRequest チュートリアル
http://web.paulownia.jp/script/ajax/xmlhttp2.html
Ajaxの解説サイト
http://sagittarius.dip.jp/~toshi/Ajax/yui.html
AJAX/JavaScriptライブラリまとめ
http://d.hatena.ne.jp/brazil/20050909/1126254775
すぐにAjaxなアプリが作れるJavaScriptライブラリ「Rico」
http://www.openrico.org/home.page
Ajaxを使って日本語を扱う方法のメモ
http://www.infoaxia.com/tools/blog/archives/2005/06/ajax_1.html
Ajaxを実現するためのJavaScriptライブラリ「nazonojs」
http://nazo.yi.org/nazonojs/
XMLHTTPRequestを使う際に気をつけておきたいこと
http://www.7korobi8oki.com/mt/archives/000050.html


6 :
jsスレでいいじゃん。どうせ質問なんだから

7 :
>>6
ajaxはそんな甘いもんじゃない。

8 :
>>6
Ajaxを甘く見ると命を落とすことになるぞ。

9 :
くだすれって土井宇言う意味ですか

10 :
こんなのが甘くないなんて、よほど(ry

11 :
ajaxは辛いよ

12 :
ワラ

13 :
歯ごたえのほうはどうですか?

14 :
こっちが喰われそうです。
WebProg板のAjaxスレから転載
ttp://chasen.org/~taku/software/ajax/hwr/
凄すぎ
こんな事が出来る脳みそ欲しいです。誰か譲って下さい。

15 :
また新たなスキルを身につけねば…
いつまで保つんだろうか…
#PHPで食ってるが、Ajaxやっとかんと食いっぱぐれそう

16 :
非同期通信の際の最大同時接続数は、ブラウザの最大同時接続数の制限を受けるのですか?

17 :
一瞬"くれだす"と読んだw

18 :
昔リモートスクリプトでやってた。
リモートスクリプトはGETなんで、でかいデータのやり取りに苦労した。

19 :
www.live.com
てAjaxの技術?

20 :
以前ちらっと見たな
Firefox対応はcoming soonか
その割に結構動いてるしajaxでせう

21 :
Google MapはMacのSafariでもぐりぐり見られますが、食べログ.com
のマップはSafariでは見られません。
Ajaxの解説については、ブラウザ互換について考慮してある
http://allabout.co.jp/career/javascript/closeup/CU20050430A/index.htm
がいいのではないでしょうか。
http://sagittarius.dip.jp/〜toshi/Ajax/yui.html
のサンプルデモ
http://sagittarius.dip.jp/〜toshi/Ajax/demo3.html
は、MacのSafari1.2.4で動作せず、ソースが表示されてしまいました。

22 :
21で挙げたAllAboutの解説なのですが、
http://allabout.co.jp/career/javascript/closeup/CU20050531A/index.htm
のサンプルはSafari1.2.4で動作しません。表を良く見たらs1が×になっています。
これがSafariを表す……のかな。
n7 ネットスケープ
m1 モジラ
e5 IE
s1 Safari
ですかねぇ……。

23 :
ちなみにMacのIEはSafariが出たことによって開発が止まっています。

24 :
AllAboutはJKL.ParseXMLに頼り切っていて役に立たないよね

25 :
入門扱いで文章量控えるにはそんなあたりが関の山じゃないの。

26 :
「キーワード」、「値」を入力するフォームと投稿ボタンがあって、
投稿ボタンを押すたびに、下にリスト状に追加表示されて、
各レコードの右にある「削除ボタン」を押すと
そのレコードが削除されるようなAjaxって
どうやってつくるの?
ごめ、眠っくて死にそうだから文章分かりにくいかも。。。

27 :
パッチリってるときに書き込もうな。

28 :
誰の質問にでも優しく答える俺だが、答えてやれない相手が2人だけいる。
一人は、眠そうにしながら人にものを訊ねる奴と、
もうひとりは、以前眠そうにしながら人にものを訪ねた事のある奴だ。

29 :
ああ、寝ぼけた声で「あたしの下着どこー?」とか聞かれてもこまるよな。
こっちは思い出す以前に忘れたい限り、いやむしろとっとと追い出したい状況だというのに。
あれは答える気力が失せる。

30 :
function loadXMLDoc() {
varreq = false;
// branch for native XMLHttpRequest object
if(window.XMLHttpRequest) {
try {
req = new XMLHttpRequest();
} catch(e) {
req = false;
}
// branch for IE/Windows ActiveX version
} else if(window.ActiveXObject) {
try {
req = new ActiveXObject("MSXML2.XMLHTTP");
} catch(e) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
req = false;
}
}
}
//if(req) {
req.onreadystatechange = processReqChange(rec);
req.open("GET", 'cg.html', false);
req.send(null);
document.getElementById("moto").innerHTML = rec.responseText;
//}
}
これで、24行目でreqを宣言してないと出るんですがなぜですか?

31 :
ジャバスクリプトはそのうち消える、そんな風に思っていた時期が俺にもありました。

32 :
多言語時代になるらしいしね

33 :
>>30
ブラウザは?
文字コードは?

34 :
>>33
原因はそこら辺ですか・・・、ユニコードに直したらできたんですけど
UPするとばぐる・・・・

35 :
>>29
そんなシミュレーションしなくても実際にそのような場面に遭遇する確立は低いので地道に生きましょう

36 :
>>35
×確立
○確率

37 :
どなたかメガビュー掲示板に看板画像を乗せるタグを知る人は居ませんか?ほとんどの方が知らないと思います…この質問はレアな部位に入ると思います。心優しくセンスのある方の来訪を待つ。

38 :
>>37
                ,. -、
           _.,,/-....._ヽ
        ,.-=7..:.:.:.:,:lー、::ヽ...、
        〃 /:::/:/lj`_ `;:::l`、.、
        //  ク:l(::フ  l:.::j l::::l  l i
      ,' ;'  ゝl −`l =L):!  .! l  恥ずかしいセリフ禁止っ!
      i l     (\..|_」、-,'ニ、   l .!
     ,! l  _,/_ゝ. \/  .}   l l
.    l ,!   (/  _,>、 ´ヽ /    l l
      l l   ゝ-l} /l 丶ノ-' {.    l l
      l l   (´lj/|、ヽ|| _j   l l

39 :
画像はフォルダに保存できません><
画像はマイ・ピクチャでなくては保存できないのでしょうか?

40 :
>>39
                ,. -、
           _.,,/-....._ヽ
        ,.-=7..:.:.:.:,:lー、::ヽ...、
        〃 /:::/:/lj`_ `;:::l`、.、
        //  ク:l(::フ  l:.::j l::::l  l i
      ,' ;'  ゝl −`l =L):!  .! l  恥ずかしいセリフ禁止っ!
      i l     (\..|_」、-,'ニ、   l .!
     ,! l  _,/_ゝ. \/  .}   l l
.    l ,!   (/  _,>、 ´ヽ /    l l
      l l   ゝ-l} /l 丶ノ-' {.    l l
      l l   (´lj/|、ヽ|| _j   l l

41 :
http://g2.ngw.jp:2000/
この応答を遅延させる仕組みについて具体的にどういうことをやっているのか
わかる方いますか?

42 :
>>41
接続を繋げっぱなしで、サーバ側で変化(コメント入力)があった時点でクライアントにレスポンスを返してるのでは?
クライアント側(ブラウザ)ではタイムアウトしたら、すぐに接続して待機状態を保っているぽいです。


43 :
エロゲの鬼太郎

44 :
Ajaxって何のことかと思ったら
ActiveXObject("Msxml2.XMLHTTP")かこれの系統の
オブジェクトを使ってもにょもにょすることだったのか。
Ajaxと言うのを知らずに使ってた。

45 :
Ajaxに挑戦中。でもいいネタがないんだよなぁ・・・。

46 :
Ajaxでチャット作ってんだけどさ
リアルタイムに極限まで近づけるのってあり?
サーバーで許される限りずーっとプロセス生きてるの
あり?

47 :
ローカルフォルダにファイルを保存することはできますか?

48 :
JavaScriptでローカルにアクセスは出来ません。

49 :
prototype.js使っているのですが、 Ajax.Requestの挙動について質問があります。
FireFoxでは問題無かったのですが、IEの場合2回目以降の
Ajax.Requestの呼び出しがうまくいっていないような状態です。
具体的にはボタンを押すとAjax.Requestを呼び出し、数秒間sleepさせて
から値を返すサーバにリクエストをします。それで数秒後に受信完了して
onCompleteで受信完了のアラートを出すという単純なものなのですが、
これをIEで実行すると1回目は数秒後に受信完了となるのですが、
2回目ボタンを押すといきなり受信完了となってしまいます。
Firefoxでは2回目以降も数秒間遅延したあと受信完了の
アラートが出るのですがこれで正常なのでしょうか?

50 :
>>49
> Ajax.Requestを呼び出し、数秒間sleepさせてから値を返すサーバにリクエストをします。
↑これって(1) (2) のどっち?
(1) 数秒間sleepさせてから、「値を返すサーバ」にリクエストをします
(2) 「数秒間sleepさせてから値を返すサーバ」にリクエストをします

51 :
(2)です。
処理に時間がかかっていることを擬似的に表すため
3秒間遅延するだけのスクリプトを用意して、それに対してリクエストしました。
js -> 遅延サーバ(3秒間sleep)
3秒後
js <- 遅延サーバ

52 :
>>51
Firefoxはよく知らないが、IEはXMLHTTPRequestのレスポンスもキャッシュしてたはず。
サーバ側で有効期限付けて返したら大丈夫かも?

53 :
GETメソッドでリクエストする場合、URLが同じだとIEの場合キャッシュしてしまう
っぽいです。URLに適当なパラメータを付けて(時間がちょうどいい)
url = url + "?t=" + (new Date()).getTime();
こんな感じにするとIEでもうまくいきました。んーでもなんか
普通じゃない感じがするのですが、皆さんはページをリロードせずに
定期的、もしくは任意のタイミングで複数回データを受信するとき
どんな方法使ってますか?

54 :
いろいろ調べた結果、POSTメソッドを使うか
ヘッダにIf-Modified-Sinceを指定すればキャッシュを無効にできそうです。

55 :
>>49
そういう事案にぶつかった時の参考にさせてもらう。
乙でした。

56 :
もう少し詳しいものを書いておきます。
1つはGETされる側のスクリプト(phpの場合)にキャッシュを無効にする
ヘッダを書いておくというもの。
// HTTP/1.1
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
// HTTP/1.0
header("Pragma: no-cache");
もう1つはprototype.jsのAjax関係の関数、例えばAjax.Requestの場合
var obj = new Ajax.Request(url,
 { method: 'get', onComplete: loaded,
  requestHeaders: ['If-Modified-Since', '01 Jan 1970 00:00:00 GMT']
 });
こんな感じでrequestHeadersにIf-Modified-Sinceを付けるとキャッシュを
無効にすることができました。以上です、いろいろとアドバイスありがとうございました。

57 :
XMLHttpRequestオブジェクト.onreadystatechange=function(){〜〜〜}
こうすると通信エラーになり、
XMLHttpRequestオブジェクト.onreadystatechange=hoge;
function hoge(){〜〜〜}
こうすると正常にデータを取ってくるんですが、前者の何がマズイのでしょうか?

58 :
自己解決しました。
readyStateが4になるまで一回一回関数を呼び出してるんですね。
失礼しました。

59 :
なんでこんなに過疎ってるんだ

60 :
ぶっちゃけ、XMLHttpRequestで何かを取ってくることに関しては、それ以上語るべきこともなく…

61 :
Ajax使ったChatのPerl版って見ないけどあるのかな。
あったらソース見て参考にしたい。

62 :
>>61
釣りにしてはレヴェル低いな・・・

63 :
>これはクライアント側が先に通信を開始させておき、
>それに対する応答を別のクライアントからのメッセージを
>受信するまで遅延させるという方法で実現されています。
>まさにクライアント側で処理を行うAjaxならではのテクニックといえます。
じゃあ俺が釣りっぽくない感じに質問を変えてみるw
このテクニックを使ったperlを利用したAjaxChatってまだ無いのか?

64 :
なんでPerlに拘るのさ
移植しろよ

65 :
そもそも>>63のでソース公開してるやつってperl以外でもあるのか?

66 :
質問。prototype(1.4)使ってAJAXにチャレンジ中なんだけど、例えば、
あるクラスのメソッド内で
this.myAjaxObj = new Ajax.Request(url,{postBody: xxxx,
onComplete:xxxxx});
ってな感じで書くとするじゃない。
で、レスポンスが帰ってくる前に同じクラスの別のメソッドで↑と全く
同じように呼ぶと、2重にリクエストが行くことになるよね?その時に、
2重にならないように古い方のリクエストを中止したいんだけど、どうも
うまくいきません。新しい方のリクエストを呼ぶ前に、
this.myAjaxObj.transport.abort();
で行けるかと思ったんですが、だめみたい。。。
もしご存知の方がいたら教えてくだひゃい…。
# オブジェクト指向の理解がまだ曖昧なんで、とってもアフォなこと言ってたら
すんません。


67 :
メソッドごとにフラグを作っておき、どちらかが実行されたらもう一方のフラグをfalseにしてonreadystatechangeの所で弾くというのはどうか。
ありきたりですまんが、途中で中止って可能なのか分からないよ('・ω・`)

68 :
サーバー側PHP,クライアント側JRASCRIPT、間をAJAXでつないで、
ビジネスプログラムインタフェースを作るのだが、一機能で100万でどうだろうか。
DBは使わない予定。

69 :
いらない。
暴利を貪りすぎ。

70 :
どんなきのうだよ!

71 :
きのう:EXCELの入力と同じようなことが出来ること

72 :
>>67
レスdクス
やっぱグローバル変数使ってフラグ制御なりをするか、
XMLRequestオブジェクト(だっけ?)自体をグローバルにして使いまわす
とか、そんなことかなぁ。。。
もうちょい調べてみます、ありがd

73 :
質問じゃなくて申し訳ないが、
ttp://dev.kan.vc/validator/
ここのvalidator-0.2.1.tar.gz持っている人居る?
1ヶ月くらいリポジトリがぶっこわれてるらしくて、ダウンロードできん。
ググって探し回って、0.10は見つけたんだが・・・。

74 :
prototype.js使ってます。
new Ajax.RequestでonSuccessのコールバック関数に渡されるtransportから、
リクエストを発行したURLを取得する方法無いですか?
複数一気に発行して同じ関数をコールバックするので、
どのリクエストの返事か判別したいんですが・・・

75 :
社内ネットワークの検索システムに、得意げにajax導入したら、
苦情が増えた。上司に怒られた。同僚に馬鹿扱いされた。
元に戻した。

76 :
ためしにこんなのを。
for(i=0;i<2;i++){
var url ="ttp://www.example.com/"+i;
new Ajax.Request(url,{method:'get',onSuccess:function(transport){onsuc(transport,url)}});
}
function onsuc(transport, url){...}
結果:ダメでした。二回とも二回目に発行したurlが入ってしまった。

77 :
あ、できた。おk。

78 :
>>75
今後の参考に何がおきたのか聞きたいんだが

79 :
・ボタンを押す前に、何でデータ送信してんだ?馬鹿。
・タイピング中に何をごそごそ裏で動いてんだ。気持ち悪いぞ。馬鹿。
・なんか重いぞ。馬鹿。
・データベースへのリクエスト数倍増だ。壊す気か。馬鹿。
・VPNに負荷かけ過ぎ。
などなど。
新しもの好きの人だけGJ!って言ってくれたが、うちの会社では時期尚早でした。
慣れという壁は高い。

80 :
>79
「裏で動くのが気持ち悪い」以外は慣れの問題じゃなくて環境の問題だろ。
データベースがリクエスト数倍増でも大丈夫、VPNが負荷かけまくっても余裕、
AJAXが作動しても重くならない位クアライアントPCがハイスペック、って環境が揃って
初めてAJAXを導入する環境が整ったと言える。
逆にこれらが整ってるなら、そこに挙がってるクレームにも余裕で反駁できるっしょ。

81 :
そらそんだけ要因揃ってたらAjax好きの俺でも”待った”かけるぞw
ちゃんとインフラ整ってからAjaxに移行しろよ。スケールの設計やった事ないのか?

82 :
>79 へのレス。

83 :
ところで
AjaxとAvex
で似てない?

84 :
ところで
Ajaxとアジャ・コング
で似てない?

85 :
>>83は「エイジャックス」と読む人
>>84は「アジャックス」と読む人

86 :
アヤクス

87 :
質問です。メソッドをGETで、サーバーに問い合わせて、
結果をinput(text)に反映したら、IEだと、レスポンス+HTMLのコード全部になってしまいます。
Firefoxでは、レスポンスだけを表示できました。

88 :
>>87
レスポンスに何を返してるのかがわからないから、なんとも言えないけど。。。
--
Content-Type:text/plain;charset=UTF-8
あいうえお
--
みたいなレスポンスを返してるのでしょうか??

89 :
>>79
1と2行目、裏で動いてるのよくわかったねw
それが容易にわかる人ならAjaxぐらい知ってそうなものだけど。

90 :
Ajaxを使ってテーブルゲームを作った俺が来ましたよ。

91 :
>>90
こんばんわ

92 :
現在、Ajaxを使用して通信しており、サーバからの結果を取得した値(id)を
別ページに送りたいのですが、どうすれば良いかわかりません
以下ソースです
id取得部分
document.getElementById('getid').innerHTML = xmlhttp.responseText;
表示部分
<div id="getid">検索結果</div>
送信部分(ここが良くわからない)
<form method="get" action="AjaxTest2">
<input type="hidden" name="getid" value="<%='getid'%>">
<input type="submit" value="送信">
AjaxTestで表示されているgetidは動的に変化するのですが、
それを別ページ(AjaxTest2)へ送信するとgetidは空になっています
正確な値(AjaxTestで見えているgetid)を送るにはどうすれば良いか、
御教授の程宜しくお願いします

93 :
>>92
とりあえず、eval("var hoge"+xmlhttp.responseText);とかやっといて
document.getElementByName("getid").value=hoge;とかどうですか。
でも、自分だったら、submitをbuttonにしておいて、onmousedownでxmlhttpで送るかな。

94 :
>>92
1. URLの最後に "?" をくっつけて値と変数のペアーのリンクをつくる。CGIでデータを送るような感じのURLにする。
  例)page100.html?VALUE=hogehoge
  ※日本語を値に取る場合、エンコーディングしないといけない
2. 飛んだ先のページには、location.searchで?以下の文字列を取るようにする。あとは、"=" でスプリットして値をゲットする。
試していないので、できなかったらゴメン


95 :
数秒間待ってからプログラムを再開するために、C言語などで言うsleepのようなものを探しているのですが
javascriptにsleep関数はないのでしょうか?

96 :
>>95
実行状況のステータスを設けて、setTimeoutを使うくらいしか思い浮かばない。

97 :
function hoge(){
var ajax;
if (window.XMLHttpRequest) {
ajax = new XMLHttpRequest();
} else if (window.ActiveXObject) {
try {
ajax = new ActiveXObject('Msxml2.XMLHTTP');
} catch (e) {
ajax = new ActiveXObject('Microsoft.XMLHTTP');
}
}
ajax.onreadystatechange = function () {
if (ajax.readyState == 4 && ajax.status == 200) {
var res = ajax.responseXML;
alert(res.xml);
}
}
ajax.open('GET', 'hoge.xml');
ajax.send(null);
}

98 :
Ajaxのテストをしているのですが、上記ソースでIEではXMLが
表示されるのですが、Opera8、Firefoxでは表示できません。
何が問題なのかわからなくて困っております。
分かる方おられましたら教えてください。よろしくお願いいたします。

99 :
ローカルでやってるとか。

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
はてなアンテナってうざくない? (285)
タグの正しい読み方 (846)
1日7〜99hitぐらいの人のスレ 12hit目 (473)
■◇■トラフィックゲート専用板 パート1■◇■ (804)
【ブラック】承認拒否多発サイト【リスト】 (418)
別サイトへの target="_blank" は利用価値があるか (355)
--log9.info------------------
Mシューマッハ、F1復帰ならず (605)
なぜウジテレビは堂本光一をF1ゲストに呼ばないのか (204)
モタスポ板で【頭文字D】を語るスレ (265)
マクラーレンホンダ(笑) (443)
邪悪最悪ドライバー対決ウェーバーVSハミルトン (630)
ハイメ・アルグエルスアリ Part1 (523)
【INDY】インディジャパンファイナル【JAPAN】 (905)
【復活!】ザウヴァー速ぇぇぇぇぇ (;´Д`) (322)
伊藤利尋アナ実況戻ってきて下さい頼む【Part11】 (469)
バトンの独走にいい加減うんざりしてる人の数 ⇒ (796)
【規制されても】ニダーランやろうぜ【お試し●で】 (338)
【謎の】マノーグランプリPart1【チーム】 (228)
アロンソの化けの皮が剥がれてきた件ー2010ー (392)
のんびりとF1韓国GPを成功に導くスレ★5 (260)
道端ジェシカが可愛すぎる件について (289)
同じ10代のランチア好きな友達が欲しい (248)
--log55.com------------------
::フルデジタルヘッドホン::
伝説のBONテープについて語るスレ
《MEI》DV総合情報スレ Part5《SONY》
東芝 3D REGZA ZP2/ZP3シリーズ゙専用 Part12
アイヴィブルー BIV-R1021/BIV-R521 part1
ヘッドマウントディスプレイ Part5
【REAL 4K】三菱液晶テレビ23インチ目【レーザー】
[AV板でも]お手頃価格でナイスなDACを語りあうスレ6