Jquery ui 使用jqueryui的工具提示
这是我第一次使用工具提示,我做了很多研究。我使用jquery网站获取了大部分信息。我希望我的工具提示在鼠标单击超链接时显示动态数据。我在我的链接中添加了标题,下面有代码:Jquery ui 使用jqueryui的工具提示,jquery-ui,jquery,Jquery Ui,Jquery,这是我第一次使用工具提示,我做了很多研究。我使用jquery网站获取了大部分信息。我希望我的工具提示在鼠标单击超链接时显示动态数据。我在我的链接中添加了标题,下面有代码: var t = 1000; $(document).tooltip({ content: '... waiting on ajax ...', open: function(evt, ui) { var elem = $(this); $.ajax({ type: "POST",ur
var t = 1000;
$(document).tooltip({
content: '... waiting on ajax ...',
open: function(evt, ui) {
var elem = $(this);
$.ajax({ type: "POST",url:'/GetTooltip/', data: 80140}).always(function() {
elem.tooltip('option', 'content', 'Ajax call complete');
});
setTimeout(function(){
$(ui.tooltip).hide('destroy');
}, t);},
position: {
my: "center bottom-20",
at: "center top",
using: function( position, feedback ) {
$( this ).css( position );
$( "<div>" )
.addClass( "arrow" )
.addClass( feedback.vertical )
.addClass( feedback.horizontal )
.appendTo( this );
}
}
});
var t=1000;
$(文档)。工具提示({
内容:“…正在等待ajax…”,
打开:功能(evt、ui){
var elem=$(本);
$.ajax({type:“POST”,url:'/GetTooltip/',数据:80140}).always(function(){
元素工具提示(“选项”、“内容”、“Ajax调用完成”);
});
setTimeout(函数(){
$(ui.tooltip).hide('destroy');
},t);},
职位:{
我的:“中底20”,
在“中心顶端”,
使用:功能(位置、反馈){
$(this.css(position);
$( "" )
.addClass(“箭头”)
.addClass(feedback.vertical)
.addClass(feedback.horizontal)
.附于(本);
}
}
});
我不完全了解ajax调用的语法(参考always函数)以及如何获取显示在工具提示上的数据。GetTooltip返回JSON数据,我只想将返回的数据发布到GetTooltip脚本并显示在工具提示上。目前,我的ajax没有发布任何内容。关于您不完全了解的声明
- always函数:always(函数(data | jqXHR,textStatus,jqXHR | errorshown){});始终在执行ajax请求后执行。有关更多信息,请参阅文档,另请参阅
- 获取返回的数据以显示在工具提示上-请参见fiddle中的示例
function callAjax(elem){
$.ajax({ url: '/echo/json/',
type: 'POST',
contentType:"application/json; charset=utf-8",
dataType:"json",
data: { json: JSON.stringify({ text: 'some text'})}
}).always(
function(data,textStatus, errorThrown)
{
elem.tooltip('option', 'content'
, 'Ajax call complete. Result:' + data.text);
});
}
我正在使用上面的JSON.stringify(…)
创建一个JSON字符串。此功能可能不存在于所有浏览器中。因此,如果您遇到麻烦,请使用当前的chrome/chrome浏览器进行测试
因此,您可以在tooltip()中使用包装器函数:
在上面,您可以看到always方法使用3个参数(data、textStatus、ErrorSprown)调用匿名函数。要传递来自ajax调用的回复,您可以使用
data
。上面我只传递了一个带有propert文本的简单对象。要访问它,您可以使用数据。text
非常感谢。在哪里传递需要在GetTooltip脚本中执行的值?谢谢你的链接,我现在正在查看always函数。@SitheloNgwenya我已经更新了小提琴和解释。如果你需要更多的指针,请告诉我。你的代码很棒。我已标记为已回答。我现在正在看更新的代码。
$('#tippy').tooltip({
content: '... waiting on ajax ...',
open: function(evt, ui) {
var elem = $(this);
callAjax(elem);
} // open
});