![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
jQueryを初めて使うのですが、勉強不足でよく理解できていません。
テーブルの各行のa hrefに渡すパラメタを各々の行が持っている値に置き換え、元の値を消したいと思っています。
jQueryを使えば、このように出来上がったタグの結果を後から一括で書き換えることが可能だと思っているのですが、見よう見まねでスクリプトを書いているのですが、うまくいきません。
具体的には、
<table>
<tr>
<td><div class="lnk"><a href="#">A</a></div></td>
<td><div class="x">a</div></td>
<td><div class="y">1</div></td>
</tr>
<tr>
<td><div class="lnk"><a href="#">B</a></div></td>
<td><div class="x">b</div></td>
<td><div class="y">2</div></td>
</tr>
</table>
となっている値を
<table>
<tr>
<td><div class="lnk"><a href="page.html?p=a&q=1">A</a></div></td>
<td><div class="x"></div></td>
<td><div class="y"></div></td>
</tr>
<tr>
<td><div class="lnk"><a href="page.html?p=b&q=2">B</a></div></td>
<td><div class="x"></div></td>
<td><div class="y"></div></td>
</tr>
</table>
に替えたいのです。
<script>
$('tr').each(function(){
$("#lnk a").attr("href", "http://page.html?p="+ $('#x').text() + "&q=" + $('#y').text() );
$('#x').remove();
$('#y').remove();
});
</script>
と書いてみたのですが、エラーも何も出ず反応しないので、悩んでいます。
アドバイス頂けたら有難いです。
No.1ベストアンサー
- 回答日時:
こんな感じでどうでしょうか?
$(function(){
$('.lnk a').each(function(){
with($(this).closest('td').siblings()){
var x=find('.x').text();
var y=find('.y').text();
find('.x').text("");
find('.y').text("");
}
var url="page.html?";
$(this).attr('href',url+"p="+x+"&q="+y);
});
});
yambeipさん コメント有難うございました。
素晴らしいです。一発で解決しました。
siblingsというメソッドがあるんですね。
同じ階層の繰り返しをどうやって判別するのかが判らずに困っていました。
見れば、なんとなく意味は判るのですが、jQueryまだまだ奥が深いですね。
非常に助かりました。
どうも有り難うございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Selenium.ChromeDriverの使い方について 7 2022/09/22 06:43
- HTML・CSS テーブルタグのセルの幅の一部だけを指定 1 2023/03/12 12:02
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- HTML・CSS 【CSS】:hasで可能? imgを含むtr要素を選択したい 1 2022/11/17 14:36
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- HTML・CSS CSSのホバーエフェクト 1 2023/06/19 06:53
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
- HTML・CSS cssが効かなくて困ってます 1 2023/01/01 23:57
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ハイパーリンクを別ウインドウ...
-
プルダウンで選択すると、DBの...
-
JSで、テーブルのある行のみ、...
-
Selenium.ChromeDriverの使い方...
-
動的なtableの値を取得したい
-
テーブルで複数行をまとめて非...
-
特定の文字列を挿入
-
標準準拠モードと後方互換モー...
-
至急!GetElementById でtdの...
-
JavaScript チェックボックスで...
-
onMouseOverで複数(?)のセル...
-
テーブルの変数について
-
javascript クリックすると、あ...
-
JavaScriptによる表のソート機...
-
テーブル内に表示されている数...
-
スクロールバーの表示位置を変...
-
JavaScriptで特定のtdタグにcla...
-
マウスをブラウザの外に出した...
-
何番目のクラスか取得するには
-
プルダウンで選択した値によっ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
特定<table>内の<td>の色を変える
-
プルダウンで選択すると、DBの...
-
一覧から選択した行の行番号を...
-
tableの任意行にfocusをあてる
-
ハイパーリンクを別ウインドウ...
-
JavaScriptで特定のtdタグにcla...
-
JavaScriptでテーブルをクリッ...
-
【UWSC】HTML内のある部分を抽...
-
至急!GetElementById でtdの...
-
チェックボックスにチェックが...
-
JavaScriptでテーブルの行入れ替え
-
動的なtableの値を取得したい
-
Selenium.ChromeDriverの使い方...
-
二次元配列に数字をランダムに...
-
Excelで作ったhtmlファイルのサ...
-
スクロールバーの表示位置を変...
-
テーブルの変数について
-
マウスをブラウザの外に出した...
-
テーブル行のクリックでチェッ...
-
jquery datatablesを使用 イン...
おすすめ情報