下面是我试图在弹出窗口中显示的div。如何从弹出窗口中获取td值。当试图调用popupClick()时。它返回undefined。我已附上以下代码。在此先感谢您的帮助。
function btnSmartResult() {
$.ajax({
dataType: "json",
url: "/Rule/SmartResultExecution",
//datatype: "text",
type: "POST",
success: function (data) {
$('#smartresultTable tbody').empty();
$.each(JSON.parse(data), function (index, jsonResult) {
console.log(jsonResult.CurrentClaimIPID);
var rows = "<tr>" + "<td class='smartresultId' onclick='popupClick();'><a href='#'>" + jsonResult.ClaimSummaryId + "</a></td>" + "<td>" + jsonResult.PatientName + "</td>" + "<td>" + jsonResult.PayorName + "</td>"
+ "<td>" + jsonResult.ClientDemographicMasterID + "</td>" + "<td>" + jsonResult.AmountPaid + "</td>" + "</tr>";
$('#smartresultTable tbody').append(rows);
});
var modal = document.getElementById('ruleSmartResultPopup');
modal.style.display = "block";
},
error: function (data) { }
});
}
function popupClick() {
var obj = { claimSummaryID: parseInt($(this).closest("tr").find("td").eq(0).html()) };
alert($(parseInt($(this).closest("tr").find("td").eq(0).html())));
}
&#13;
<div class="modal1-body" style="height:400px;overflow-y:auto;">
<br />
<div class="col-md-12 container-fluid">
<table id="smartresultTable" class="table table-striped table-bordered smartresultClass">
<thead style="text-align:center;background-color:cadetblue;color:white;">
<tr>
<td>ClaimSummaryID</td>
<td>PatientName</td>
<td>PayorName</td>
<td>ProviderName</td>
<td>TotalPaid</td>
</tr>
</thead>
<tbody style="text-align:center;"></tbody>
</table>
</div>
</div>
&#13;
答案 0 :(得分:0)
试试这个
function btnSmartResult() {
$.ajax({
dataType: "json",
url: "/Rule/SmartResultExecution",
//datatype: "text",
type: "POST",
success: function (data) {
$('#smartresultTable tbody').empty();
$.each(JSON.parse(data), function (index, jsonResult) {
console.log(jsonResult.CurrentClaimIPID);
var rows = "<tr>" +
"<td class='smartresultId' id='" + jsonResult.ClaimSummaryId + "' onclick='popupClick(this.id);'><a href='#'>" + jsonResult.ClaimSummaryId + "</a></td>" +
"<td>" + jsonResult.PatientName + "</td>" +
"<td>" + jsonResult.PayorName + "</td>"
+
"<td>" + jsonResult.ClientDemographicMasterID + "</td>" +
"<td>" + jsonResult.AmountPaid + "</td>" +
"</tr>";
$('#smartresultTable tbody').append(rows);
});
var modal = document.getElementById('ruleSmartResultPopup');
modal.style.display = "block";
},
error: function (data) { }
});
}
function popupClick(value) {
alert(value);
}
答案 1 :(得分:0)
您应该使用.text()
代替.html()
。
您的代码将是:
function popupClick() {
var obj = { claimSummaryID: parseInt($(this).closest("tr").find("td").eq(0).html()) };
alert($(parseInt($(this).closest("tr").find("td").eq(0).text()))); //<--Changed .html() to .text()
}