+ JavaScript の質問用スレッド vol.131 +

レス数が1000を超えています。これ以上書き込みはできません。
1Name_Not_Found2017/11/21(火) 21:58:33.01ID:???
JavaScript を自ら学ぶ人のための質問スレッドです。
次スレは>>950が(本スレで改善案があれば考慮して)立ててください

■規則/推奨ルール
・メール欄を空欄にし、名前にレス番を入れることを強く推奨(なりすまし防止)
・質問内容は具体的に。言葉だけでなく、出来る限り再現性を確認したサンプルコードの掲示。
・質問テンプレートの利用推奨。
・質問への「答え」だけでなく「意見」を出しても良い。

■禁止行為
・丸投げ質問
・迷惑スクリプトの質問
・オレオレ用語の使用(一般的な用語を使用する事)
・煽り、批判等の他人を不快にさせる行為(批判の代わりに「AよりBが良い」のような代案を出す事)

■質問テンプレート
【環境】OS, ブラウザをバージョンと共に記入してください。(ex: IE8, Firefox4)
【条件】期待する回答の条件を書いてください。(ex: jQuery不可, フレームワーク不可)
【何をしたのか】何をしたら問題の現象が発生するのか。再現手順を具体的に書いてください。
【エラーメッセージ】エラーメッセージがあれば正確に書き写してください。(Windows なら「コピット」を活用)
【期待する結果】最終的にどういう結果を望んでいるのか、を書いてください。
【サンプルコード】現象を再現可能な最小限のコードを書いてください。
 1レスに収まらないならコード投稿サイトを利用してください。
 http://jsdo.it/ http://jsbin.com/ http://jsfiddle.net/ http://ideone.com/

■回答者へ
・回答には多様性があります。他人の回答を尊重してください
・動作ブラウザや環境が限られる場合は、それを明記してください
・他人の回答を批判する代わりに、自分ならこう書くという例を示してください
・質問者がJavaScriptでなければ実現できないと勘違いしてるなら、その否定としてHTMLとCSSで実装しても良い
・他人の回答を見たくないのであれば、文句をつける代わりにNGにして見えないようにしてください。文句をつける=荒らしです

952Name_Not_Found2018/03/04(日) 20:12:52.77ID:???
趣味で知識ゼロからサイト作ってる人?

9539232018/03/04(日) 20:13:14.05ID:???
>>950
>サーバへのデータ送信について
の箇所を読みましたが、疑問がはれません。

GETのときは、ブラウザのURLに192.168.xx.xx/cgi/xxx_get などと指定してアクセスすれば値が返ってくる。←単純明快
POSTのときは、ブラウザのURLに指定する?しない?
どうやら、XMLHTTPRequest()を作って送るみたいだ。どうやれば実行される?
実行されたとして、どうやって192.168.xx.xx/cgi/xxx へメッセージを送っているのか?

GETのときは、192.168.xx.xx をブラウザのURLで指定したけど、
POSTのときは、192.168.xx.xx をどこにも指定しないでどうやって送るのだろうか?

954Name_Not_Found2018/03/04(日) 20:17:40.57ID:???
一回試しにうごかしてみりゃいいやん

9559232018/03/04(日) 20:18:22.02ID:???
>>952
Web系の知識ゼロの底辺SEがWeb APIを使おうとして悪戦苦闘中です。

956Name_Not_Found2018/03/04(日) 20:20:18.34ID:???
>>954
いまの環境だと試せないので明日試します。

957Name_Not_Found2018/03/04(日) 20:21:43.00ID:???
そのWeb APIの仕様書が何の仕様書でどう書かれてるかは知らんけど
通信先URLが、ホスト名が指定されていない cgi/xxx だけであっても、
だから絶対に機能しないとはいえない

958Name_Not_Found2018/03/04(日) 20:40:15.72ID:???
GETの時
xhr.open('GET',encodeURIComponent('sample.sample?query1=some2&query2=some2'))
xhr.send(null)

POSTのとき
xhr.open('POST', 'sample.sample')
xhr.setRequestHeader('content-type','application/x-www-urlecoded;charset=UTF-8');
xhr.send(encodeURIComponent('query1=some1&query2=some2'))

959Name_Not_Found2018/03/04(日) 20:48:33.84ID:???
<img src="img.png">

960Name_Not_Found2018/03/04(日) 22:10:50.78ID:???
>>958
GETのときは、ブラウザのURL欄に192.168.xx.xx/cgi/xxx_get と指定するので、そこにあるデータを取得するのは分かります。
POSTのときは、GETのときのようにブラウザのURL欄に指定することはしないみたいなので、どこに192.168.xx.xx を指定しているのでしょうか?

この構文の中に 192.168.xx.xx/cgi/xxx のアドレスが含まれているようではなさそうですし。。

961Name_Not_Found2018/03/04(日) 22:22:22.30ID:???
カレントディレクトリじゃねぇの?

962Name_Not_Found2018/03/04(日) 22:38:24.22ID:???
>GETのときのようにブラウザのURL欄に指定
?

963Name_Not_Found2018/03/04(日) 22:51:38.22ID:???
相対パスと絶対パスの話じゃないの

964Name_Not_Found2018/03/04(日) 22:56:01.92ID:???
悪戦苦闘って言葉を使っていい状況じゃないな

965Name_Not_Found2018/03/04(日) 23:20:19.62ID:???
>>961
カレントディレクトリはどこのカレントディレクトリでしょうか?
サーバーの?それともクライアントの?

9669232018/03/04(日) 23:22:18.24ID:???
>>962
>>923でRequestを設定しなくてよい方は、ブラウザにURLを入れて実行したら値が表示されたので、
これがGETなのかなと思っていて、そのことを言っています。

967Name_Not_Found2018/03/04(日) 23:27:43.92ID:???
>>963
>>928
>url: "cgi/xxx",
このパスはサ−バのカレントディレクトリからのパスを指していると思うのですが、
192.168.xx.xx を指定しなくても送信できるのでしょうか?
宛先が分からないのではないでしょうか?

968Name_Not_Found2018/03/04(日) 23:34:14.51ID:???
>>964
そうですよね。前途多難です

969Name_Not_Found2018/03/04(日) 23:43:47.70ID:???
'URL'にすきなもんおきゃいいだけだろ
ばかなのかこいつ

970Name_Not_Found2018/03/04(日) 23:48:27.75ID:???
おまえらなんでキレながら丁寧に教えてんの?
ツンデレなの?

971Name_Not_Found2018/03/05(月) 00:12:14.87ID:???
べっべつに教えてるわけじゃないんだからっ
ただの独り言なんだからっ

972Name_Not_Found2018/03/05(月) 00:14:45.16ID:???
いや、俺はjQuery以前の問題なんでさっさと手を引いたよ
流石にこの程度じゃjQueryの素晴らしさを他の人に
伝えることは難しいからね。

つまり1+1の答はなんだ?っていう話題で
jQueryを使うと〜という話をするのは難しいということ
せめてAjaxの話にまでくれば良いんだけどね

973Name_Not_Found2018/03/05(月) 00:30:57.02ID:sxVFIZX2

974Name_Not_Found2018/03/05(月) 00:32:37.38ID:???
jQueryニキに見放されるとは
もうおまえこの業界でいきていけんぞ

975Name_Not_Found2018/03/05(月) 01:16:26.77ID:???
見放すとは失敬な。お前らに任せるって言ってるんだよw
jQueryの話題じゃねーもの

976Name_Not_Found2018/03/05(月) 01:48:34.87ID:???
HTMLのformでGETとPOST勉強してこい

977Name_Not_Found2018/03/05(月) 02:38:27.82ID:???

978Name_Not_Found2018/03/05(月) 04:57:30.71ID:NlfT2vVU
http://seleniumhq.github.io/selenium/docs/api/javascript/module/selenium-webdriver/lib/webdriver_exports_WebDriver.html#executeAsyncScript

↑このexecuteAsyncScriptのExampleにあるarguments[arguments.length-1]が指してるのはどの関数に渡されてる引数のこと?

979Name_Not_Found2018/03/05(月) 13:03:34.23ID:???
どこにあるか見つからんのやけど
とりあえずコレ嫁
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Functions_and_function_scope/arguments

980Name_Not_Found2018/03/05(月) 15:21:02.11ID:???
jQuery でフォーム送信は、form.submit(); かな?
「jquery form submit」で検索!

Ajax で同期処理は、非推奨だから使うな。
非同期のみ使え

JavaScript のXHR は、ややこしいので使うな。
素人は、jQueryのAjaxなどを使え

「jquery ajax example」で検索!

981Name_Not_Found2018/03/05(月) 16:09:55.80ID:???
jQueryは甘え

982Name_Not_Found2018/03/05(月) 16:33:51.61ID:???
ライブラリもフレームワークも甘え
高級言語自体甘え

983Name_Not_Found2018/03/05(月) 16:54:38.46ID:???
c++は甘えですか

984Name_Not_Found2018/03/05(月) 17:39:31.56ID:???
自分で作ったライブラリは甘えですか

985Name_Not_Found2018/03/05(月) 19:06:45.69ID:???
甘えんぼさんばっかりだね

986Name_Not_Found2018/03/05(月) 20:33:23.50ID:???
GreasemonkeyのAPIであるGM_xmlhttpRequestって戻り値がundefinedになる仕様なのですが
return出来ないとなると即時関数内にまとめて処理を書くしかないんでしょうか?
処理を分離したいのですが良い方法はありませんでしょうか?

GM.xmlHttpRequest({
method: "GET",
url: "http://www.example.com/",
onload: function(response) {
処理
}
});

987Name_Not_Found2018/03/05(月) 21:04:32.82ID:???
別の関数作ってGM.xmlHttpRequestのonLoadでそれ呼ぶようにすれば?

9889232018/03/05(月) 23:32:10.86ID:???
>>977を参考にフォームデータを送信してみました。
Requestのデータにcmdだけを設定するものがあったので、まずはそれを試してみました。

<form action="http://192.168.xx.xx/cgi/yyy" method="post">
<input name="cmd" value="1">
<button>test</button>
</form>

すると、ブラウザでは<error> xxxxxxxx </error> タグが入ったものが返ってきました。
ステータスコードは、302 Foundでした。とりあえずはサーバからResponseが返ってきました!
302の意味は「今ちょっとここにないよ」みたいなので、設定が足りないのだと思います。(何となく心当たりがあります)

989Name_Not_Found2018/03/06(火) 12:32:36.52ID:nWSEmP07
http://seleniumhq.github.io/selenium/docs/api/javascript/module/selenium-webdriver/lib/webdriver_exports_WebDriver.html#executeAsyncScript

↑このexecuteAsyncScript関数のExampleにあるarguments[arguments.length-1]が指してるのはどの関数に渡されてる引数のこと?

990Name_Not_Found2018/03/06(火) 14:06:53.36ID:???
>>989
Promiseオブジェクトのresolve関数だろう

executeAsyncScript関数の定義の中身が
Promiseになっててarguments[arguments.length-1]
でresolve関数が実行されるようになってるのだろう

Unlike executing synchronous JavaScript with #executeScript, scripts executed wit
h this function must explicitly signal they are finished by invoking the provided call
back. This callback will always be injected into the executed function as the last a
rgument, and thus may be referenced with arguments[arguments.length - 1].
てかいてるやん。

991Name_Not_Found2018/03/06(火) 14:46:32.29ID:???
次スレよろ

992Name_Not_Found2018/03/06(火) 16:06:32.24ID:???
>>989
おまえってさ
何日か前にXHRのバイナリがなんとかで質問してたやつ?
解答ないと質問コピペで繰り返して
解答あってもスルーする糞野郎だろ?
しねよ

こいつの質問には今後一切答えないように

993Name_Not_Found2018/03/06(火) 16:36:19.03ID:???
了解!

994Name_Not_Found2018/03/06(火) 17:09:39.66ID:???
そりゃ的外れな回答されても反応に困るわな

995Name_Not_Found2018/03/06(火) 18:32:22.56ID:???
的はずれな回答されたなら
またコピペ質問してるはずだろ
こいつならw

996Name_Not_Found2018/03/06(火) 18:48:25.16ID:???
誰も立てないから立ててきた
https://mevius.5ch.net/test/read.cgi/hp/1520329583/

997Name_Not_Found2018/03/06(火) 18:57:02.64ID:???
的外れなら「的はずれなんだよボケ。俺はこうしたいの。オマエ馬鹿なのか。バカは返答するな」って言ってもらわんと方向修正できんやろ。
コピペで質問返されてもな。

9989802018/03/06(火) 22:08:15.01ID:???
>>980
に書いてある

素人は、jQuery のAjax を使え!!

999Name_Not_Found2018/03/06(火) 22:12:59.80ID:???
次スレ

+ JavaScript の質問用スレッド vol.132 +
https://mevius.2ch.net/test/read.cgi/hp/1520329583/

1000Name_Not_Found2018/03/06(火) 23:33:28.43ID:???
jsコード上でxhrでapi叩くのと
formを作ってsubmit()させるのとじゃ効果が違くね?

10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 105日 1時間 34分 55秒

10021002Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php

レス数が1000を超えています。これ以上書き込みはできません。