質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

1回答

2901閲覧

JSの子要素のvalue値をループでセット

poyopoyo

総合スコア12

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2015/09/15 03:00

編集2015/09/15 04:33

HTML

1<!-- A グループ --> 2<div id="groupA"> 3 <div class="formGroup"> 4 <input type="text"> 5 <input type="hidden" name="Aa" value=""> 6 </div> 7 <div class="formGroup"> 8 <input type="text"> 9 <input type="hidden" name="Ab" value=""> 10 </div> 11 <div class="formGroup"> 12 <input type="text"> 13 <input type="hidden" name="Ac" value=""> 14 </div> 15</div> 16<!-- B グループ --> 17<div id="groupB"> 18 <div class="formGroup"> 19 <input type="text"> 20 <input type="hidden" name="Ba" value=""> 21 </div> 22 <div class="formGroup"> 23 <input type="text"> 24 <input type="hidden" name="Bb" value=""> 25 </div> 26 <div class="formGroup"> 27 <input type="text"> 28 <input type="hidden" name="Bc" value=""> 29 </div> 30</div>

上記のようなコードでJSまたはJQueryを使用して「hidden」の「value」値を下記のようにグループごとに上から1~を代入したいのですが、
やり方がわかりません。
※実際のname値は不規則にセットされます


Aa = 1
Ab = 2
Ac = 3

初歩的な質問で申し訳ないのですが、ご教授よろしくお願い致します。

※追記1
各グループには別のJSでformGroupが追加できる機能があり、
そのさいに不規則な文字でhiddenのnameに値が入ります。
POSTでPHPに渡す直前にhiddenのvalue上から順番に番号を入れていき、
並び順をDBに保存したいのです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

<form> でマークアップしてみてはどうでしょう。

HTML

1<!-- A グループ --> 2<form id="groupA"> 3 <div class="formGroup"> 4 <input type="text"> 5 <input type="hidden" name="Aa" value=""> 6 </div> 7 <div class="formGroup"> 8 <input type="text"> 9 <input type="hidden" name="Ab" value=""> 10 </div> 11 <div class="formGroup"> 12 <input type="text"> 13 <input type="hidden" name="Ac" value=""> 14 </div> 15</form> 16<!-- B グループ --> 17<form id="groupB"> 18 <div class="formGroup"> 19 <input type="text"> 20 <input type="hidden" name="Ba" value=""> 21 </div> 22 <div class="formGroup"> 23 <input type="text"> 24 <input type="hidden" name="Bb" value=""> 25 </div> 26 <div class="formGroup"> 27 <input type="text"> 28 <input type="hidden" name="Bc" value=""> 29 </div> 30</form> 31 32<script> 33(function () { 34 function sample (form, selectorsText) { 35 for (var i = 1, elements = form.querySelectorAll(selectorsText), l = elements.length + 1; i < l; ++i) { 36 elements[i].value = i; 37 } 38 } 39 40 sample(document.getElementById('groupA'), 'input[type=hidden]'); 41 sample(document.getElementById('groupB'), 'input[type=hidden]'); 42}()); 43</script>

(9/15 12:14追記)
HTMLを書く場合はmarkdownを使っていただけると見やすくて助かります。

(9/15 13:22追記)
input[name] を上書きしてしまっていたのを修正しました。

投稿2015/09/15 03:14

編集2015/09/15 04:22
think49

総合スコア18162

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

think49

2015/09/15 04:25

input[name] を上書きしてしまっていた為、修正しました。
poyopoyo

2015/09/15 04:49

ありがとうございます。 参考にさせていただきました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問