【发布时间】:2015-04-20 01:14:37
【问题描述】:
我有一些工作代码在单击各种链接时使用 ajax 重写一些 html。我希望它做的是在悬停事件上动态创建一个对话框,而不是在点击事件上动态重写一些 html。这是有效的点击代码:
<html>
<head>
<script language="javascript" type="text/javascript" src="/wp-includes/js/jquery/jquery.js"></script>
</head>
<script language="javascript" type="text/javascript" src="/wp-content/themes/spacious/jquery-ui/jquery-ui.js"></script>
<body>
<div id="book001">
<a href="javascript:{}" class="citation"><span class="book">I, Robot</span><br>
<div id="author001"></div>
</div>
<div id="book002">
<a href="javascript:{}" class="citation"><span class="book">Stranger In A Strange Land</span><br>
<div id="author002"></div>
</div>
<script id="source" language="javascript" type="text/javascript">
var $j = jQuery.noConflict();
$j( ".citation" ).click(function ( )
{
event.preventDefault();
var get_book = $j(this).find('span.book').html();
var divName = $j(this).parent().attr('id');
$j.ajax({
url: 'book_api.php',
data: {
book:get_book,
},
dataType: 'json',
success: function(data)
{
var content = data[4];
$j('#'+divName.replace('book','output')).html(content);
}
});
});
</script>
</body>
</html>
我打算使用 jQuery UI 来创建对话框。我对如何让 ajax 代码影响对话内容有点模糊。该页面将包含数百个此类链接,因此我不想预先填充数百个对话框。
【问题讨论】:
-
book_api.php 返回了多少数据?或者要显示的数据是多行还是只有几行?也许你可以使用 jquery ui 工具提示或类似的。或者肯定你必须使用对话框?
-
只有几行,所以工具提示可能很好,但我仍然会遇到同样的问题,即不希望预先填充每个工具提示的权重。将有数百个。
标签: jquery jquery-ui jquery-dialog