我知道这个问题被问了很多,但我已经尝试了所有的clickevents但是似乎无法让这个工作我想从td得到一个值或字符串这里是我构建的表
<table id="tblMain">
<thead>
<tr>
<th>Parcel ID</th>
<th>Quick Ref ID</th>
<th>Address</th>
<th>Tax Unit</th>
<th>Style</th>
<th>Arch Style</th>
<th>Validity Code</th>
<th>Sale Price</th>
<th>Sale Date</th>
<th>Year Built</th>
<th>Total Living Area</th>
<th>Lot Area</th>
<th>Bedrooms</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr class="side-link">
<td class="parcelIDCell"><a id="Parcelid" /> @item.ParcelId </td>
<td>@item.QuickRefId</td>
<td>@item.Address</td>
<td>@item.TaxunitA</td>
<td>@item.StyleA</td>
<td>@item.ArchStyleA</td>
<td>@item.ValCode</td>
<td>@item.SalePriceA</td>
<td>@item.SaleDateA</td>
<td>@item.YearBuilt</td>
<td>@item.LivingArea</td>
<td>@item.LotArea</td>
<td>@item.BedroomA</td>
@*<td>@item.ParcelID</td>
<td>@item.PropertyID</td>*@
</tr>
}
</tbody>
我只想从第一行检索包裹ID,具体取决于我点击哪一个 我试过的一些java脚本
<script>
var tbl = document.getElementById("tblMain");
if (tbl != null) {
for (var i = 0; i < tbl.rows.length; i++) {
for (var j = 0; j < tbl.rows[i].cells.length; j++)
tbl.rows[i].cells[j].onclick = function () { getval(this); };
}
}
function getval(cel) {
alert(cel.innerHTML);
}
还有更多,但我删除了它们 任何建议将不胜感激
答案 0 :(得分:2)
你想要一个id或字符串?你可以这样做:
$("td").click(function() {
if($(this).hasClass("parcelIDCell")){
var ID = $(this).find("a").attr("id");
alert("Id is: " + ID);
}else{
var String = $(this).text();
alert("Text is: " + String);
}
});
它检查点击的td
是否包含类parcelIDCell
,如果有,它会在其中找到a
标记并拉出id
。如果该类不存在,则只会抓取该文本。小提琴下面:
答案 1 :(得分:1)
使用jQuery:
$("#tblMain td").click(function() {
if ($(this).hasClass('parcelIDCell') {
alert($(this).find('a').attr('id));
} else {
alert($(this).text());
}
});
更新:获取宗地ID或文本,具体取决于td的类别。