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

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

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

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

jQuery

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

2回答

6454閲覧

appendで動的に追加した要素数の取得と要素数による処理について

hide09090909

総合スコア68

JavaScript

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

jQuery

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

1クリップ

投稿2017/04/17 03:40

編集2017/04/17 05:03

追加ボタンを押下すると、tableのtrが動的に1行追加され、2回ボタンを欧化し、trが2行になると非活性処理してあるボタンを活性化させたいです。
しかし、trが2行になるとボタンを活性化させるという記述がわからず、困っております。
下記にコードを示します。
jqueryの行数とコメントアウトしている部分が今悩んでいるところです。

<table class="sample" id="testo"> <thead> <tr> <th></th> <th>a</th> <th>b</th> <th>c</th> <th>d</th> <th>e</th> </thead> <tbody id="result"> <tr> </tr> <div class="row"> <div class="col-xs-12"> <button type="button" id="add" name="add" " class="btn margin-bottom" style="color: #ffffff; background-color: #40b740;">追加</button> </div> <div class="col-xs-12"> <button type="button" id="this" name="this" " class="btn margin-bottom" style="color: #ffffff; background-color: #40b740;">このボタンを活性化させたい</button> </div> </div>
$(document).ready(function() { // ボタンを非活性にする $('[name=this]').prop("disabled", true); }); //行数取得 var rows = $('#result')[0]; $(document).ready(function() { if(rows = 2){ $('[name=filecomparison_result]').prop("disabled", false); } });

よろしくお願い致します。

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

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

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

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

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

kei344

2017/04/17 04:17

「ボタンを押下する」に対するスクリプトが書かれていませんが、それも追記ください。
yambejp

2017/04/17 04:23

addボタンが非活性化しているのにそれを押して2行にはならないのでは?
guest

回答2

0

jQueryを使用しているのならば、

javascript

1if($('#result').length == 2){ 2 3}

でOKですよ。

投稿2017/04/17 04:16

KuninoriTanaka

総合スコア93

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

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

kei344

2017/04/17 04:20

tbody#resultなので、'#result tr' では?
KuninoriTanaka

2017/04/17 06:18

あ、すいません、確かにその通りです。 ```javascript if($('#result tr').length == 2){ } ```javascript
guest

0

中途半端な部分を補完してみました

javascript

1<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 2<script> 3$(function(){ 4 $('[name=add]').on('click',function(){ 5 $('#testo').append($('<tr>') 6 .append($('<td>').text("test")) 7 .append($('<td>').text("test")) 8 .append($('<td>').text("test")) 9 .append($('<td>').text("test")) 10 .append($('<td>').text("test")) 11 .append($('<td>').text("test"))); 12 $('[name=filecomparison_result]').prop("disabled",$('#result tr').length>=2); 13 14 }); 15}); 16</script> 17<table class="sample" id="testo"> 18<thead> 19<tr> 20<th></th> 21<th>a</th> 22<th>b</th> 23<th>c</th> 24<th>d</th> 25<th>e</th> 26</thead> 27<tbody id="result"> 28</tbody> 29</table> 30 31<div class="row"> 32<div class="col-xs-12"> 33<button type="button" id="add" name="add" class="btn margin-bottom" style="color: #ffffff; background-color: #40b740;">追加</button> 34<input type="button" name="filecomparison_result" value="test"> 35</div> 36</div>

修正

最初不活性で増えると活性化するんでした、以下修正しておきます

javascript

1<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 2<script> 3$(function(){ 4 $('[name=filecomparison_result]').prop("disabled",true); 5 $('[name=add]').on('click',function(){ 6 $('#testo').append($('<tr>') 7 .append($('<td>').text("test")) 8 .append($('<td>').text("test")) 9 .append($('<td>').text("test")) 10 .append($('<td>').text("test")) 11 .append($('<td>').text("test")) 12 .append($('<td>').text("test"))); 13 $('[name=filecomparison_result]').prop("disabled",$('#result tr').length<2); 14 }); 15}); 16</script> 17<table class="sample" id="testo"> 18<thead> 19<tr> 20<th></th> 21<th>a</th> 22<th>b</th> 23<th>c</th> 24<th>d</th> 25<th>e</th> 26</thead> 27<tbody id="result"> 28</tbody> 29</table> 30 31<div class="row"> 32<div class="col-xs-12"> 33<button type="button" id="add" name="add" class="btn margin-bottom" style="color: #ffffff; background-color: #40b740;">追加</button> 34<input type="button" name="filecomparison_result" value="test"> 35</div> 36</div>

投稿2017/04/17 04:34

編集2017/04/17 06:15
yambejp

総合スコア114779

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問