gpt4 book ai didi

javascript - 未捕获的 ReferenceError : x is not defined at HTMLTableRowElement. onclick

转载 作者:行者123 更新时间:2023-11-30 15:23:21 26 4
gpt4 key购买 nike

我四处寻找解决方案,但我可能只是遗漏了一些非常明显的东西,因为它们无法解决我的问题。我根本不是 JS 高手,只是免责声明。

我有一个 ASP 项目,其中 JavaScript 有时会调用一些 C# 代码。我以此开始我的代码:

window.onload = function () {
LiveSearch();
getCredentials();
getAllUsers();
getIsAdmin();
};

所有这些功能都运行良好。但感兴趣的是 getAllUsers(),因为它通过 AJAX 调用联系后端以获取一些数据来填充表格。

function getAllUsers() {
var result_body = "";
$.ajax({
type: 'GET',
url: '/Home/GetAllUsers',
dataType: 'json',
cache: false,
contentType: 'application/json; charset=utf-8',
data: JSON.stringify(""),
success: function (users) {
PushToScope("users", users);
var dict = scope[2];
if (dict.key.length > 0) {
for (var key in dict.value) {
result_body += '<tr onclick="getClickedUserObject(' + dict["value"][key].Initials + ')\">';
result_body += '<td class=\"col-xs-4\">' + dict["value"][key].Name + '</td>'
result_body += '<td class=\"col-xs-4\">' + dict["value"][key].Title + '</td>'
result_body += '<td class=\"col-xs-4\">' + dict["value"][key].Department + '</td>'
result_body += '<td style=\"display: none\">' + dict["value"][key].PrivatePhone + '</td>'
result_body += '<td style=\"display: none\">' + dict["value"][key].WorkEmail + '</td>'
result_body += '<td style=\"display: none\">' + dict["value"][key].WorkPhoneLandline + '</td>'
result_body += '<td style=\"display: none\">' + dict["value"][key].WorkPhoneMobile + '</td>'
result_body += '</tr>';
}
} else {
result_body += '<tr>';
result_body += '<td style=\"col-xs-12\"><b>No Data. Try again, or Contact IT Support.</b></td>';
result_body += '</tr>';
}
$('#result-table').html(result_body);
}
});
}

正如我所说,上面的方法有效,但是当我单击表格中的元素时出现问题。下面的“getClickedUserObject()”:

function getClickedUserObject(lettercode) {
if (lettercode != undefined) {
var users = scope[2];
var user = users["value"][lettercode];
$('#result-title').html(user.Title);
$('#result-name').html(user.Name);
$('#result-department').html(user.Department);
$('#result-email').html('<a href=\"mailto:' + user.WorkEmail + '\">' + work.WorkEmail + '</a>');
$('#result-work-mobile').html(user.WorkPhoneMobile);
$('#result-work-landline').html(user.WorkPhoneLandline);
$('#result-private-mobile').html(user.PrivatePhone);
if (lettercode == scope[0]) {
$("#HidePrivate").show();
$("#HidePrivate").disabled = false;
$("#HidePrivate").checked = user.HiddenPrivatePhone;
} else {
$("#HidePrivate").hide();
$("#HidePrivate").disabled = true;
}
}
return false;
}

这个函数永远不会触发,相反我在标题中得到错误,说我从点击一行得到的任何字母代码都没有定义。这对我来说很奇怪,因为在 Google Chrome 检查器中我看到了这个:

enter image description here

那么是什么给了?

最佳答案

我不熟悉你的函数,但也许参数应该是一个字符串?看起来您在函数调用中没有任何引号。

像这样:

result_body += '<tr onclick=\"getClickedUserObject(\'' + dict["value"][key].Initials + '\')\">';

关于javascript - 未捕获的 ReferenceError : x is not defined at HTMLTableRowElement. onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43369314/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com