gpt4 book ai didi

javascript - 未捕获的语法错误 : missing ) after argument list on something that is totally correct

转载 作者:行者123 更新时间:2023-12-01 16:25:31 25 4
gpt4 key购买 nike

我正在使用 Javascript 发送 Ajax 请求和返回的数据,我正在创建一个带有 onclick 事件的“a”标记,该事件调用另一个带有参数的方法。这是代码实现:

function loadHistory() {
var detailsForGet = {
userId: sessionStorage.getItem("userName")
}
$.ajax({
type: "GET",
url: "https://localhost:44326/User/getTwitterSearchHistory",
data: detailsForGet,
success: function (data) {
jQuery.each(data, function (index, item) {
console.log(item)
$('<a href="#" onclick="historySearch(' + item + ')">' + item + '</a><br/>').appendTo('#forHistory');
});
}
});
}

function historySearch(text) {
console.log(text)
document.getElementById('tweetSearching').innerHTML = "Searching...";
$.getJSON("https://localhost:44326/api/Twitter/GetSearchResults?searchString=" + text)
.done(function (data) {
if (data.length == 0) {
document.getElementById('tweetSearching').innerHTML = "No matches Found!";
}
else {
document.getElementById('tweetSearching').innerHTML = "Found " + data.length + " matches!";
console.log(data)
document.getElementById('searchResults').innerHTML = "";
$('<h3 style="text-align:center; color: white">Search Results</h3> <hr/>').appendTo('#searchResults');
$.each(data, function (key, item) {
$('<ul style="list-style:none;"><li><span style="font-weight: bold; color: white;">Post </span><span style="color: white;">' + item.FullText + '</span><br/><span style="font-weight: bold; color: white;">Uploader</span><span style="color: white;"> ' + item.CreatedBy.Name + " @" + item.CreatedBy.ScreenName + '</span><br/><span style="font-weight: bold; color: white;">Date</span><span style="color: white;"> ' + formatDateTwitter(item.CreatedAt) + '</span><li/><hr/></ul>').appendTo('#searchResults');
});

}
});
}

现在,当我尝试按“a”标签时,出现错误

Uncaught SyntaxError: missing ) after argument list

现在,我注意到只有当我在 onclick 函数中调用带有参数的方法时才会发生这种情况,因为之前我尝试调用不带参数的函数并且它进入了它的内部。但是,当我尝试传递一个参数时,它会返回该错误。

我在这里没看到什么吗?

最佳答案

如果您的 item 是一个字符串,您需要在 onclick JavaScript 中用引号将值括起来。由于您已经在使用单引号构建 HTML 字符串,因此您可以添加编码为 \x27 的单引号。

$('<a href="#" onclick="historySearch(\x27' + item + '\x27)">' + item + '</a><br/>').appendTo('#forHistory');

另请参阅:Escape quotes in JavaScript

关于javascript - 未捕获的语法错误 : missing ) after argument list on something that is totally correct,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62363410/

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