Stackoverflow上的第一篇文章,要温柔。 由于我认为我的错误存在于逻辑的某个地方,并且没有发现任何类似的问题,所以我决定继续推进它。
情况如下:
我有一个名为redirects的全局空数组。
var redirects = [];
重定向[]根据ajax响应数据动态填充
function ajaxFunction() {
within success call:
var prefix = "abc";
for (var key in data) {
var url = (prefix + key);
redirects[key.toLowerCase()] = url;
}
}
在我的点击方法中,我将点击的类绑定到它的url并调用创建表的函数;然后是根据我们的网址动态填充它的那个。
/**
* Bind clicked class to url and call function to fill table.
*/
$(myid).on("click", "a", function () {
// Get the clicked class selector.
var clicked = $(this.getAttribute("class"));
var selectedClass = clicked.selector;
// Check for same value and break operation when found.
for(var key in redirects) {
if (key == selectedClass) {
// Set the url to redirect in fillTable function.
var url = redirects[key];
break;
}
}
// Returns values as we expect
// console.log(key, " | ", url);
// Construct a table based on url.
table();
fillTable(url);
});
FYI:table()在html中显示表格形式; fillTable()填充了th& TD; 两个函数都可以立即定义静态URL,但我希望它基于点击动态。
现在,当我对此进行测试时,这只适用于快速发送垃圾链接而不是仅点击一次。
这让我相信它没有立即出现的原因是因为我的点击中的for循环仍然在运行,并且需要记录第二次点击(但我只是在猜测这里)。