テーブルの項目にボタンを配置し、そのボタンが押された時には、
その行のデータを別ウィンドウで開き、編集する。
というような物を書きたいのですが、
ボタンを押した際にその行の情報を取得するにはどうしたらよいでしょうか?
また、その行の見えない所(内部的な処理にのみ使える)にコードを持たせておくような事は可能なのでしょうか。
<table border="0" cellpadding="0" cellspacing="0" class="playguide-list">
<tr>
<th class="head">名前</th>
<th class="head-tel">電話番号</th>
<th class="head-tel">ファックス</th>
<th class="head-syori">処理</th>
</tr>
<tr>
<td>******</td>
<td>******</td>
<td>******</td>
<td>
<input type="button" value="編集" onclick="" />
<input type="button" value="削除" onclick="" />
</td>
</tr>
</table>
このような感じです。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
>また、その行の見えない所(内部的な処理にのみ使える)にコードを持たせておくような事は可能なのでしょうか。
コードって言うのがどのようなものかわかりませんが、文字列でよければ、ボタンと一緒にHidden要素を並べたらどうでしょう?
編集ってことで、サーバー側でHTMLを動的に生成してるのを前提に参考意見を。
違ってたらスルーしてください。
各行のHTMLを生成中に、データをループして書き出してると思うのですが、各データのユニークなキーを、HTMLのボタンのonclick内に埋め込みつつHTMLを生成していきます。
<input type="button" value="編集" onclick="edit('ユニークなキー')" />
JavaScript側では、編集用の関数が受け取ったユニークなキーを、パラメータに追加して送信する。
(追加は、hidden要素を使うなりなんなりと。)
このような構成で編集画面を開けば、パラメータで受け取ったユニークなキーを利用して、そのデータの編集画面が開けます。
まさにご指摘通りの考え方の作りを考えていました!
<input type="button" value="編集" onclick="edit('ユニークなキー')" />
これで解決しました!!
ループで動的に作成する際、ボタンにユニークキーを割り付けられるとは思いませんでした。
ありがとうございました☆
No.1
- 回答日時:
<html>
<body>
<table border="1" cellpadding="0" cellspacing="0" class="playguide-list">
<tr>
<th class="head">名前</th>
<th class="head-tel">電話番号</th>
<th class="head-tel">ファックス</th>
<th class="head-syori">処理</th>
</tr>
<tr>
<td>ドラえもん募金</td>
<td>0990-513-006</td>
<td>1234-567-890</td>
<td>
<input type="button" value="その行の1番目" onclick="alert(tbcolval(this,0))" />
<input type="button" value="その行の2番目" onclick="alert(tbcolval(this,1))" />
</td>
</tr>
</table>
>また、その行の見えない所(内部的な処理にのみ使える)にコードを持たせておくような事は可能なのでしょうか。
<br>ちと意味がわかりません。
<script>
function tbcolval(o,n){
return parentSearch(o,'TR').childNodes.item(n).innerHTML;
}
function parentSearch(o,t){while(o.tagName!=t)o=o.parentNode;return o;}//親node探し
</script>
返信ありがとうございます。
確かにこうする事で取得が可能なんですね!
書いている事をそのまま取得したい部分もありましたので、活用させていただきます☆
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Selenium.ChromeDriverの使い方について 7 2022/09/22 06:43
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- HTML・CSS テーブルタグのセルの幅の一部だけを指定 1 2023/03/12 12:02
- HTML・CSS 【CSS】:hasで可能? imgを含むtr要素を選択したい 1 2022/11/17 14:36
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- JavaScript javascriptでテーブルに追加した項目のid追加してローカルストレージを操作したい 5 2023/01/01 15:52
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- JavaScript 追加ボタンを押した際に ok ボタンを押した場合のみ入力値が追記されるようにしたいです 6 2022/05/29 09:57
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プルダウンで選択すると、DBの...
-
jqueryとscriptでTABLEのセルを...
-
VB.NET
-
特定<table>内の<td>の色を変える
-
ブルダウン選択でページの表示...
-
テーブルの項目の値取得
-
ラジオボタンとセルの連動
-
特定タグの文字を抽出するには
-
JavaScriptで特定のtdタグにcla...
-
一覧から選択した行の行番号を...
-
firefoxでchildNodesの代用
-
javascriptを短く方法ありますか?
-
return trueとreturn falseの用...
-
プルダウン選択を変更すると、...
-
slickのレスポンシブ > center...
-
FormのonsubmitでJavaスクリプ...
-
onchangeイベントを強制的に発...
-
submitがおされた同時に JavaSc...
-
select要素のvalueを配列で取得...
-
Selectボックスの幅を自動で広...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ハイパーリンクを別ウインドウ...
-
プルダウンで選択すると、DBの...
-
一覧から選択した行の行番号を...
-
tableの任意行にfocusをあてる
-
特定<table>内の<td>の色を変える
-
JavaScriptで特定のtdタグにcla...
-
至急!GetElementById でtdの...
-
マウスをブラウザの外に出した...
-
【UWSC】HTML内のある部分を抽...
-
スクロールバーの表示位置を変...
-
クリックされた罫表セルの行番...
-
テーブルの変数について
-
動的なtableの値を取得したい
-
特定の文字列を挿入
-
テーブル内に表示されている数...
-
javascript クリックすると、あ...
-
テーブルの項目の値取得
-
javascriptで質問です。 displa...
-
Tablesorteを2行一組でソートする
-
\\u30ad\\u30fc\\u30dc・・・と...
おすすめ情報