子画面から親画面の値格納、TEXT枠は成功したが直近のLabelへ値が戻らない・表示されない?
本件は案件№:38680「遷移された子画面でリスト選択された値を、~」の続きです...
先の件、お蔭様で親画面側のテキストボックスにID付与・除去を果たすことで、目的の行(テーブル内のテキスト枠)へリストの選択値を戻すことを成功しています。
今回はテキスト枠と同行にある隣のLabelへ、リスト選択された表示内容を戻したいと思っています。
些細な原因とも思うわけですが、Labelということが影響しているのか、同行隣という要素の取得に失敗している要因かで、目的を達成できません。
(動的に生成されるTABLE=HTMLを、開発ツールで見ることってできない??)
JSの開発が初めて間もなく、デバッグが不慣れのため掲載してしまいました。
お手すきの方ございましたら、解決に向けたご支援をよろしくお願い致します。
// ★子画面JS★ 品名コードのリストボックスで指定を受けたら...
$("[name=car_model]").on("change", function(){
// 親画面コード枠(TEXT)は、選択リストボックスの値を戻す
var cd = $(".car_model option:selected").val();
// 親画面名称枠(LABEL)は、選択リストボックスの表示内容を戻す
var totalval = $(".car_model option:selected").text()
var strtext = totalval.split(" ");
var name = strtext[1];
alert(name); // ←表示できた!!!
// こちらは成功している
var elem = window.opener.document.getElementById("99");
$(elem).val(cd);
// こちらが成功しない ***********************
$(elem).closest("label").innerHTML = name;
$(elem).closest("label").css("width", "20px"); // まさか隠れてる、とか思って
//********************************************
// 親画面の指示行のID属性を除去し、当該子画面を閉じる
$(elem).removeAttr("id");
close();
});
// ★親画面JS★ 品名コード検索画面(winOpenとセットで利用)
$(document).on("click", ".cdsrch", function(e) {
// **** 戻ってくるテキストボックス特定のため、IDに99を付与
$(this).next().attr("id","99");
// ****
winOpen("cdselect0.php", 600, 960);
return false;
});
function winOpen(url, width, height) {
if (width > 800) {
width = 800;
}
if (height > 600) {
height = 600;
}
window.open(url, "_blank", "toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=" + width + ", height=" + height);
}
<!--★★親画面HTML-->
<table>
<tr class="appLineDummy">
<td><button class="cdsrch" type="button"><img src="img/検索.png"></button>
<input type="text" name="cd" style="width:45px;"></td>
<td><label name="name"></label></td>
<td><label name="capa"></label></td>
<td><label name="scond"></label></td>
</tr>
</table>