■ このスレッドは過去ログ倉庫に格納されています
javascriptが得意なVipperはいませんか?たすけてください
- 1 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:38:38.02 ID:l89OKLHs0.net
- おねがいします。
どうしても分からないことがあります。
分かる人には10秒で分かると思います
- 2 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:39:28.74 ID:Apu2YT7t0.net
- 分かった
- 3 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:39:38.66 ID:l89OKLHs0.net
- どなたかおねがいします
- 4 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:39:48.55 ID:PTnvDYgK0.net
- なるほどなー
- 5 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:39:51.42 ID:ewrMmLva0.net
- あーそれはああすると動くよ
- 6 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:40:37.26 ID:5CZs643x0.net
- あぁもう分かった
- 7 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:41:36.95 ID:BumGVc1V0.net
- 早く書いてよ
- 8 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:46:52.22 ID:l89OKLHs0.net
- <textarea class="box" id="input" name="comment[body]"></textarea>
みたいなインプットボックスがあります。ここには@hoge がはいっています。
そこで
<a href="#chat" id="username" value="@mona”><span class='btn'>返信</span></a>
のボタンをクリックすると
インプットフィールドの内容が@hoge @mona になるように末尾に追加していきたいんです
今はjavascriptはこのように組んでいます
$(document).on('click', 'a#username', function() {
$(".box#input").val($(this).attr('value'));
}
- 9 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:49:41.72 ID:7yNKAOGr0.net
- jquery使われるとさっぱりだ
- 10 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:52:04.07 ID:5CZs643x0.net
- なんでval($("#input") + $(this).val())じゃなくてval($(this).attr('value'))なの?
これだと末尾に追加じゃなくて上書きされんじゃん
- 11 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:52:24.01 ID:l89OKLHs0.net
- >>9さん
何とかなりませんか?
- 12 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:53:06.18 ID:l89OKLHs0.net
- >>10さん
ずばり、そのとおりです
現状だと上書きされてしまうので、
後ろに追加させるために、どのようにコードを改変すればいいか分かりません
- 13 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:54:51.01 ID:5CZs643x0.net
- あぁミスった
とにかくクリックイベントの中で
$("#input").val($("#input").val() + $(this).val());
でええんちゃうの
要は今セットされてる値にボタンが持ってる値を+で文字列連結すりゃいいじゃんってこと
- 14 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:56:27.08 ID:l89OKLHs0.net
- >>13さん
試しましたが上書きされちゃう>_<
- 15 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:59:49.97 ID:/pcdJe8I0.net
- 教えてやってもいいけどこれってアフィ
- 16 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 02:59:56.36 ID:5CZs643x0.net
- そもそもちゃんと値取得できてんのかなぁ
console.log($("#input").val());
console.log($(this).val());
console.log($("#input").val() + $(this).val());
でそれぞれの値がちゃんと取得できてるかどうか調べてみ
- 17 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:04:13.93 ID:l89OKLHs0.net
- >>16
上書きされるってことは取得できてるってことじゃないんですか?
- 18 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:06:45.33 ID:l89OKLHs0.net
- >>16
console.log($("#input").val());
でundefinedって返ってきます
なんでだろう
- 19 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:06:46.34 ID:5CZs643x0.net
- >>17
>>13のコードで上書きされるってことは$(this).val()だけ取得できてて$("#input").val()は取得できてないと考えるのが自然でしょ?
空白と@monaを足した物が@hogeを上書いてるわけだから
でも実際どうなってるのかは一個一個こまめに調べるのがプログラムの基本だから全部調べてみるといい
デバッガとか使うと一々コード書かずに調べられたりもして便利だよ
- 20 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:07:08.27 ID:x+9/Lzf70.net
- 1.テキストボックスから値取得
2.hrefから値取得
3.1で取得した文字列と2で取得した文字列を連結する
4.3の文字列をテキストボックスに設定する
以上
- 21 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:12:12.65 ID:l89OKLHs0.net
- >>19さん
jsfiddleにデモ載せていい?
- 22 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:12:50.17 ID:5CZs643x0.net
- >>18
そこになんか問題があるってこった
まず.val()を外してconsole.log($("#input"));してみよう
まぁ考えられるのはなんかスペルミスしてるとかIDがinputの要素が複数あったりするかだ
念のため補足しとくけどHTMLでは一画面内に同じIDの要素が複数あるのは規約違反だ
- 23 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:14:25.15 ID:5CZs643x0.net
- >>21
そうだね
それが早そう
- 24 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:15:35.97 ID:/pcdJe8I0.net
- はい終了
$(document).on("click", function(){
var s = $("#username").attr('value');
var e = $("#input");
e.val(e.val() + s);
});
- 25 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:18:16.70 ID:5CZs643x0.net
- 俺の書いたのと同じ内容のコード書いて何がしたいの?
- 26 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:20:59.87 ID:/pcdJe8I0.net
- >>25
誰に言ってるの?
- 27 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:22:13.64 ID:l89OKLHs0.net
- >>23さん
ありがとう
作ってみました
http://jsfiddle.net/2ShGg/
- 28 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:23:50.24 ID:l89OKLHs0.net
- ID:/pcdJe8I0 は日本人じゃないから無視の方向でいきましょう
- 29 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:27:29.58 ID:5CZs643x0.net
- jsfiddle上だと上書きも動いてない感じだなぁ
どうなってんだろ
- 30 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:27:47.73 ID:/pcdJe8I0.net
- >>28
アフィと言われて起こってんのかな?
このスレで正解は俺しか出てないよ??
- 31 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:30:32.93 ID:/pcdJe8I0.net
- >>29
ID:5CZs643x0 は日本人じゃないから無視の方向でいきましょう
- 32 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:32:03.96 ID:/pcdJe8I0.net
- >>>29
>>25
のコードは動かないけど俺のは動く!
ID:5CZs643x0 は日本人じゃないから無視の方向でいきましょう
- 33 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:32:31.59 ID:/pcdJe8I0.net
- >>1
アフィクズは死ね
- 34 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:32:58.92 ID:/pcdJe8I0.net
- 俺以外無能人間が集まるスレッドでした
終了
- 35 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:34:22.65 ID:l89OKLHs0.net
- >>29
そうなんですよ
なんかおかしい
あと非日本人と言い当てられてファビョってる人が一人いるけど無視しましょう
- 36 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:36:45.66 ID:5CZs643x0.net
- これupdateしたらそっちでも見えるんだよね?
ちょっと直してから見てみて
>>34
俺のコードに誤りがあるのは分かってたけどお前のコードも間違ってるじゃん
- 37 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:37:23.99 ID:/pcdJe8I0.net
- >>35
ドヤ顔で間違いを言いふらしてるID:5CZs643x0をさらに追い詰めるのか?
まぁお前らチョンには恥の文化なんてないわな
- 38 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:37:59.44 ID:l89OKLHs0.net
- >>36
Updateしたら新しいURLを貼ってもらえませんか?
それとID:l89OKLHs0は嫌儲の非日本人だからシカトが一番ですよ
- 39 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:38:46.20 ID:/pcdJe8I0.net
- >>36
負け犬が何言ってるの?
間違ってる箇所を示せ。
- 40 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:39:27.64 ID:5CZs643x0.net
- >>39
$(document).on("click", function(){
- 41 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:39:41.87 ID:l89OKLHs0.net
- ID:l89OKLHs0じゃなくてID:/pcdJe8I0でした
非日本人は自分たちが忌み嫌われてることを分かってて
あえて日本人に対して非日本人認定してくる恥知らずw
- 42 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:40:26.61 ID:l89OKLHs0.net
- ID:/pcdJe8I0は祖国へ帰って
- 43 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:41:57.70 ID:/pcdJe8I0.net
- >>40
あっそ
まぁ全く動かないコードしか書けない人間なのによくできましたね〜と言ってやろうw
- 44 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:43:03.32 ID:l89OKLHs0.net
- ID:/pcdJe8I0の失態のせいで
アフィ連呼厨=非日本人ってことが確定した
- 45 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:43:47.19 ID:5CZs643x0.net
- うまくupdateできないな・・・・・・
とりあえずaタグのIDをusername1とusername2に分けてjavascriptを
jQuery(document).ready(function () {
$(document).on('click', '#username1', function() {
var input = $("#input");
$("#input").val($("#input").val() + $(this).attr('value'));
return false;
});
$(document).on('click', "#username2", function() {
$("#input").val($("#input").val() + $(this).attr('value'));
return false;
});
});
で期待通り動作してるのを確認した
- 46 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:43:55.33 ID:yLoG1Jr30.net
- お前ら的にTypeScriptってどうなの?
- 47 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:45:53.43 ID:5CZs643x0.net
- >>43
全く動かないコードしかかけない人間ってのは自分自身のことかな?
documentそのものにclickイベントを仕込んじゃう大胆な人の言葉は天才過ぎて理解できませんわ
- 48 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:46:28.02 ID:l89OKLHs0.net
- >>45
ありがとうございます。JSfiddle重いですね
できればusername1とusername2に分けずに出来ませんか?
その分、jqueryの部分が長くなってしまうので
- 49 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:49:24.06 ID:/pcdJe8I0.net
- >>47
で?
お前のコードは待ったく何も動かない
userが100人いたらidが違うコードを100個生成すんの?
- 50 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:49:30.23 ID:5CZs643x0.net
- >>48
aタグ両方に同じクラス(たとえばusername)をセットしといてon('click', '#username1', function(){の代わりにon('click', '.username', function(){にすればいいよ
複数の要素に同じIDを振るのはよくないので止めといた方がいい
- 51 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:51:07.05 ID:l89OKLHs0.net
- >>50
ちょっと試してきてみます
ありがとうございます!
- 52 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:52:07.83 ID:5CZs643x0.net
- >>49
俺は少なくとも動くコードを書いたし>>50で複数フィールドに対する解決法も提示してる
お前は間違ったコードをドヤ顔で披露したあげく>>34のような恥ずかしいレスをしてしかもまだ動くコードを出してない
流石有能な人は違うね
尊敬しちゃうなぁ
- 53 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:55:21.27 ID:/pcdJe8I0.net
- >>52
レベルが低すぎる
動くコード出してやってもいいけど
お前と俺に天(俺)と地(ID:5CZs643x0)ほどの実力差があることの証明にしかならない
- 54 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:58:15.64 ID:/pcdJe8I0.net
- >>52
お前のユーザーまとめたバージョンのコードまだ?
- 55 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 03:58:42.98 ID:/pcdJe8I0.net
- >>52
のろのろます
- 56 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:00:38.03 ID:l89OKLHs0.net
- >>52さん
できました。ありがとうございます。
ID:/pcdJe8I0みたいな口だけ野郎とは天と地(ID:/pcdJe8I0)の差です。
ありがとうございました!
- 57 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:02:13.52 ID:/pcdJe8I0.net
- >>56
間違ってるのにできるわけねーだろw
コード示せよ
示せないなら逃げたとみなす。
- 58 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:02:22.97 ID:5CZs643x0.net
- まぁ正直意図としては>>24のコードで正しいし$(this).attr('value')を$(this)がaタグであるにも関わらず$(this).val()と改悪してしまった>>13より遙かに正しいと思うよ
煽られて顔真っ赤にして煽り返して正直スマンかったわ
- 59 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:03:43.53 ID:l89OKLHs0.net
- ID:5CZs643x0さん大人すなぁ
- 60 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:04:44.57 ID:/pcdJe8I0.net
- >>58
これで>>1が嘘しかついてないことの証明でいいかな?
正解版
<textarea class="box text" cols="20" id="input" name="comment[body]" rows="5"></textarea>
<br />
<br />
<a href="#question" class="username" value="@hoge "><span class='btn btn-success'>hogeへ回答</span></a><br />
<a href="#question" class="username" value="@mona "><span class='btn btn-success'>monaへ回答</span></a><br />
---
$(document).ready(function () {
$(".username").live("click", function() {
var input = $("#input");
input.val(input.val() + $(this).attr("value"));
});
});
- 61 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:06:43.51 ID:OVVUnvhr0.net
- こんなマイナーな感じのスレでアフィ認定は草生える
- 62 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:07:36.47 ID:kVzNWyrV0.net
- 来たら荒れてるわ解決もしてるわで俺の出番じゃないみたいだな
でもこれだけは言わせてくれ
俺「ミーンミンwwwwwwwwミーンミンミンミーンwwwwwwwwwwwwwwwwwwww」
- 63 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:07:46.30 ID:5CZs643x0.net
- >>60
しっかり動作することを確認しました
>>52の愚かしいレスは取り下げて謝罪します
- 64 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:07:59.44 ID:/pcdJe8I0.net
- >>61
レベルが低すぎる奴にアフィ付けない奴がいるわけないだろ
- 65 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:08:18.18 ID:izolHpa/0.net
- 解決してるならひとこと言わせてほしい
JAVAなんてなくなってしまえ
- 66 :以下、\(^o^)/でVIPがお送りします:2014/08/03(日) 04:11:17.37 ID:kVzNWyrV0.net
- >>65
なんで唐突にJAVAに怒り出すんだよ
せめて災いの元のJavaScriptに怒れよ
総レス数 66
18 KB
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★