我有一个显示包含源引用的网页的应用程序,当用户将鼠标悬停在源引用上方时,会出现一个带有额外信息的工具提示。 如果与服务器的通信成功,我想将工具提示文本动态更改为 responseText(请参见下面的方法)-但我不知道如何。 (我已经确保 respomseText 包含正确的数据) 工具提示已生成,其数据由以下 jQuery 代码发送:
$(document).ready(function() {
$('table a').on('mouseenter._do_submit', _do_submit);
$('table a').tooltip({
tooltipClass: "coolToolTip",
content: function() {
var element = $( this );
return '<p class=toolTipP>' +element.text(); + '</p>';
}
});
$('table').bind('mouseleave._remove_icon', _remove_icon);
function _remove_icon(event) { $(event.target).find('img').remove(); }
function _do_submit(event) {
$event_origin = $(event.target);
$event_origin.find('img').remove();
ajax_sender( $event_origin );
}
function ajax_sender(event_origin_obj) {
$('<img src="./js/ajax_ani.gif" />').appendTo(event_origin_obj);
url= 'http://localhost:8080/zoharTranslator/ReadZohar';
var xhr = $.ajax({
type: 'GET',
url: url,
data: 'command=source&src=' + event_origin_obj.text(),
beforeSend: beforeSending,
success: on_success,
error: log_error_message
});
function on_success(data) {
event_origin_obj.find('img').remove();
$(document).removeAttr("title");
event_origin_obj.attr( "title", data);
console.log(xhr);
}
function log_error_message(xhr) {
...
}
function beforeSending(xhr) {
...
}
}
});
最佳答案
在创建工具提示后,您可以随时更改它的内容,方法是像这样使用它的 setter...
$( ".selector" ).tooltip( "option", "content", "Awesome title!" );
-- 第二次更新--
好的,我想出了如何将 jQuery UI 添加到 jsFiddle。这就是我解决您的问题的方法:http://jsfiddle.net/spZ69/3/
显然,ajax 调用将不起作用,但只需将 url ajax/test.html
替换为返回文本的 url,它将替换工具提示的文本。
关于javascript - 如何更改 jquery 创建的工具提示的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20866223/