我想用qTip传递一个动态参数,但它失败了。 my_ajax_controller.php只显示变量类型,但不显示q。
$('a.menu_help').qtip({
content: {
url:'my_ajax_controller.php',
data: 'type=help_menu&q='+$(this).attr('id'),
method: 'get'
},
show: 'mouseover',
hide: 'mouseout'
});
然而,q的静态值起作用:
$('a.menu_help').qtip({
content: {
url:'my_ajax_controller.php',
data: 'type=help_menu&q=toto',
method: 'get'
},
show: 'mouseover',
hide: 'mouseout'
});
是否无法将动态值传递给参数数据?
提前致谢!
Florent的
答案 0 :(得分:8)
尝试这样的事情:
$('a.menu_help').each(function(){
$currentLink = $(this);
$currentLink.qtip({
content: {
url:'my_ajax_controller.php',
data: 'type=help_menu&q='+$currentLink.attr('id'),
method: 'get'
},
show: 'mouseover',
hide: 'mouseout'
});
我没有测试过这个,但我做了类似的事情。现在就找不到了。
答案 1 :(得分:3)
我遇到了同样的问题,我用这段代码解决了。适用于qtip 1.0 rc3和JQuery 1.4.2。 请注意,qtip具有jquery> 1.3的问题。谷歌提供相关信息,但很容易修复在jquery.qtip.js上添加一行
$('.username_link').each(function(){
$(this).click(function(){ return false });//JS enabled => link default behavior disabled. Gaceful degradation
$(this).qtip({
content: { url: '/users/links',
data: { id: $(this).attr('data-id') },
method: 'post'
},
show: 'click',
hide: 'mouseout'
})
});
答案 2 :(得分:-7)
它应该可以工作,但只是尝试查看您作为ID传递的内容,或者将数据作为集合传递,如:
data : {'type':'help_menu', 'q':id}
或者
$('a.menu_help').qtip({ var id = $(this).attr('id'); alert(id); content: { url:'my_ajax_controller.php', data: 'type=help_menu&q='+ id, method: 'get' }, show: 'mouseover', hide: 'mouseout' });