
質問させていただきます。
テーブルの行を選択した後、ボタンクリックで選択されている行の値を取得したいです。
テーブルの行の選択(クリック)時にはアラートなどで値を確認できていますが、
(<tr>ループ内なら値を取得することができている)
選択した後に別途テーブル(ループ外)に配置したボタンをクリックすることによって、
選択されている行の値を取得するにはどうしたらいいでしょうか?
例)
ここのボタンで下記の行選択の文字列を取得したい。
<input type="button">
<table>
<?php for ($i = 0; $i < 10; $i++) : ?>
<tr>
<td>
<?php echo $i . '番目の行です。'; ?>
</td>
</tr>
<?php endfor; ?>
</table>
よろしくお願いいたします。
No.3
- 回答日時:
>・trのスタイルでbackground-Colorをいじっている
こんな感じ?
<script>
$(function() {
$("input[type=button]").click(function(event){
myfunc(this.value);
});
});
function myfunc(c){
var bgcolor='';
switch(c){
case "red":
bgcolor='rgb(255, 0, 0)';
break;
case "blue":
bgcolor='rgb(0, 255, 0)';
break;
case "green":
bgcolor='rgb(0, 0, 255)';
break;
}
$("tr").each(function() {
if($(this).css('background-color')==bgcolor){
alert($(this).children("td").text());
};
});
}
</script>
<input type="button" value="red">
<input type="button" value="blue">
<input type="button" value="green">
<table>
<tr style="background-Color:#ff0000;"><td>1</td></tr>
<tr style="background-Color:#00ff00;"><td>2</td></tr>
<tr style="background-Color:#0000ff;"><td>3</td></tr>
</table>
色々と試しているのですが、うまく動かすことができませんでした。
動的にbackground-colorを変化させている時はif判定がうまくできないのでしょうか。
今はテーブルのセルを下記の様に変化させ、クリックで色を変更させる様にしています。
クリックされた行をフラグ代わりにクラス名を追加してキープし、選択ボタンをクリックすることで
<tr>内のhidden ID値を得たいのです。現状はどれを選択しても同じ値になってしまいます。
続きは補足で
$(function(){
trDefault("#tr-background-color");
/* tr選択で色変更ファンクション実行 */
$("#tr-background-color tr").click(function() {
trDefault("#tr-background-color");
trClick($(this));
});
function trDefault(table_id)
{
var tr_selector = table_id + " tr";
$(tr_selector).css("background-color", "#ffffff");
$(".thread_id").removeClass("thread_selected"); // 選択されていない場合はクラス名削除
$(tr_selector).mouseover(function() {
$(this).css("background-color", "#99ffff").css("cursor", "pointer");
});
$(tr_selector).mouseout(function() {
$(this).css("background-color", "#ffffff").css("cursor", "normal");
});
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
クリックされた罫表セルの行番...
-
jqueryでどうやってエスケープ?
-
二次元配列に数字をランダムに...
-
プルダウンで選択すると、DBの...
-
CSV形式の表の内容をHTMLファイ...
-
ハイパーリンクを別ウインドウ...
-
特定<table>内の<td>の色を変える
-
ラジオボタンとセルの連動
-
return trueとreturn falseの用...
-
プルダウン 項目が多いので先頭...
-
hiddenのvalueの値を変えたい
-
【JavaScript】プルダウンで数...
-
ラジオボタンのNullチェック
-
javascriptでクリックするごと...
-
selectのonChangeが動作しません
-
eval()を使わずに数値を取得し...
-
JavaScript:現在フォーカスの...
-
javascriptでhiddenに二次元配...
-
二つのセレクトボックス間での...
-
【jQuery】input nameの文字列...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プルダウンで選択すると、DBの...
-
特定<table>内の<td>の色を変える
-
ハイパーリンクを別ウインドウ...
-
一覧から選択した行の行番号を...
-
クリックされた罫表セルの行番...
-
テーブルの項目の値取得
-
JavaScriptで特定のtdタグにcla...
-
至急!GetElementById でtdの...
-
JavaScriptでテーブルをクリッ...
-
jqueryとscriptでTABLEのセルを...
-
チェックボックスにチェックが...
-
ブルダウン選択でページの表示...
-
【JQuery】テーブルで行選択さ...
-
jQueryのプラグイン「Tablesort...
-
CSVデータをツリー表示させたい
-
テーブル内に表示されている数...
-
tableの任意行にfocusをあてる
-
tdの中をクリックしたらチェッ...
-
javascript クリックすると、あ...
-
HTML中のTABLEのデータを抽出す...
おすすめ情報
続きです。
function trClick(tr_id)
{
tr_id.css("background-color", "#70ffb7");
$(".thread_id").addClass("thread_selected"); // 行選択でクラスをフラグ代わりに追加
tr_id.mouseover(function() {
$(this).css("background-color", "#CCFFCC").css("cursor", "pointer");
});
tr_id.mouseout(function() {
$(this).css("background-color", "#70ffb7").css("cursor", "normal");
});
}
/* 選択ボタン */
$("#thread_select").click(function() {
// 現状ID値がどれもループを抜けた最終値になっています
// 行ごとのID値を取得したいです。
alert($(".thread_selected").val());
});