这是我的浏览器扩展脚本代码。名称数组中的字符串通过使用 javascript 插件用 class=".highlight"的 span 包围来突出显示。当用户将鼠标悬停在突出显示的单词上时,提示插件会使用 AJAX 数据创建工具提示。 php API 库使用 AJAX 数据创建一个工具提示,显示有关给定单词的信息。
我的代码:
var names = ["Barack Obama", "Thursday"];
var number = ["N00007360", "N00001817"];
for (var x = 0; x < names.length; x++) {
$("div").highlight(names[x], true);
}
jQuery(document).ready(function($) {
Tipped.setDefaultSkin('white');
Tipped.create(".highlight", "example.php", {
ajax: { data: { id: "N00007360" }, type: 'post' }
});
});
我不确定如何发送 AJAX 数据部分中数字数组中的相应值。截至目前,为所有突出显示的单词创建了相同的工具提示 - 使用传递给 php API 库的 id N00007360。我需要的是工具提示为悬停在其上的每个单词(名称数组)发送数字数组中的相应字符串。
示例(我需要的):将鼠标悬停在 Barack Obama 一词上,id“N00007360”将作为 AJAX 数据发送。将鼠标悬停在单词“星期四”上,ID“N00001817”将作为 AJAX 数据发送。
感谢您的帮助。
最佳答案
我认为这样的事情可能会成功。
每个对象键都会突出显示,然后对于每个突出显示类获取文本并使用它来调用对象键的值
var obj = {
"Barack Obama" : "N00007360",
"Thursday" : "N00001817"
};
jQuery(document).ready(function($) {
$.each(obj, function(key, value) {
$("div").highlight(key, true);
});
Tipped.setDefaultSkin('white');
$('.highlight').each(function() {
var currentKey = $(this).text();
Tipped.create(this, "example.php", {
ajax: { data: { id: obj[currentKey] }, type: 'post' }
});
});
});
如果你修改突出显示插件以允许添加其他 html 属性,例如数据属性,那么洞的事情可能会更容易,但我想现在这可能就足够了
关于javascript - 将AJAX对应的数组数据发送给PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19329059/