私はこのJS関数を持っています:
$("#ctl00_ContentPlaceHolder1_Table3 td").click(function () {
var varTemp;
var tr = $(this).parent();
var temp = "";
for (var i = 0; i < tr.children().length; i++) {
if (tr.children().get(i) == this) {
var leColumn = i;
break;
}
}
var tbody = tr.parent();
for (var j = 0; j < tbody.children().length; j++) {
if (tbody.children().get(j) == tr.get(0)) {
var leRow = j;
break;
}
}
if (leColumn == 13) {
var temp = $(this).text()
var hwID = temp.split(" ");
var hwIDFinal = parseInt(hwID[1]);
PageMethods.getDetailHardware(HardwareID, hwIDFinal, CallSuccessUpdateHardware, CallFailedUpdateHardware);
__doPostBack('#tblEquipementDetail', '')
}
});
生成されたテーブルでクリックされたセルの座標を取得できます。
そのおかげで、後で PageMethod を呼び出すことができます。
この関数が終了する前にやりたいことは、セルをクリックした現在の行でチェックされているチェックボックスを探すことです。
私はいくつかのことを試しましたが、今のところ成功していません。実際、私ができる最善の方法は、テーブル全体からすべてのチェックボックスを選択することです。
現在の行のものだけを選択したいと思います。
生成されたテーブルのコードは次のとおりです。
<table id="ctl00_ContentPlaceHolder1_Table3" width="100%" style="font-family: 'Microsoft Sans Serif'; color: #000000">
<tr>
<td bgcolor="#000066" width="100%" style="color:white;">ID - Hardware</td>
<td bgcolor="#000066" width="100%" style="color:white;">Label</td>
<td bgcolor="#000066" width="100%" style="color:white;">Status</td>
<td bgcolor="#000066" width="100%" style="color:white;">Comment</td>
<td bgcolor="#000066" width="100%" style="color:white;">Loan Start Date</td>
<td bgcolor="#000066" width="100%" style="color:white;">Loan End Date</td>
<td bgcolor="#000066" width="100%" style="color:white;">Assigned by</td>
<td bgcolor="#000066" width="100%" style="color:white;">Assignment Date</td>
<td bgcolor="#000066" width="100%" style="color:white;">Revocation Date</td>
<td bgcolor="#000066" width="100%" style="color:white;">Package</td>
<td bgcolor="#000066" width="100%" style="color:white;">USBPhone</td>
<td bgcolor="#000066" width="100%" style="color:white;">USBKeypad</td>
<td bgcolor="#000066" width="100%" style="color:white;">ScreenPrivacy</td>
</tr>
<tr>
<td>4477</td>
<td>HH1234</td>
<td>Affected</td>
<td></td>
<td></td>
<td></td>
<td>XXXXXXX</td>
<td>19/08/2008</td>
<td> / </td>
<td><input name="ctl00$ContentPlaceHolder1$ctl184" type="checkbox" /></td>
<td><input name="ctl00$ContentPlaceHolder1$ctl186" type="checkbox" /></td>
<td><input name="ctl00$ContentPlaceHolder1$ctl188" type="checkbox" /></td>
<td><input name="ctl00$ContentPlaceHolder1$ctl190" type="checkbox" /></td>
<td><a onclick="DetailHardware(1234);return false;" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$ctl192','')" style="font-size:9pt;">Detail 5014</a></td>
</tr>
<tr>
<td>3209</td>
<td>XS548</td>
<td>Ready</td>
等...
どんなヒントでも大歓迎です、事前に感謝します:)