好的,我正在尝试使用 JQuery 在 HTML 页面中复制相同的功能,以从我的数据库中拉入页面产品。
目前在此过程的 PHP 版本中,您可以通过典型的 PHP 调用来连接数据库:
<?php
define('INCLUDE_CHECK',1);
require "connect.php";
?>
现在这个过程有一个部分调用数据库并提取产品并回显一个 div 和 img 标签,并将提取的信息分配到适当的区域。
<?php
$result = mysql_query("SELECT * FROM internet_shop");
while($row=mysql_fetch_assoc($result))
{
echo '<div class="product"><img src="img/products/'.$row['img'].'" alt="'.htmlspecialchars($row['name']).'" width="128" height="128" class="pngfix" /></div>';
}
?>
现在有一些其他脚本可以识别这些吐出信息并将工具提示应用于产品并使它们可拖动。在 PHP 页面中这样做时效果很好。
现在我正在做的尝试让这个做同样的事情是在我的 html 页面中使用 .ajax() 调用。
var grbData = $.ajax({
type : "GET",
url : "getRow.php",
dataType: 'html',
success: function (html) {
$(".product").html(html);
},
error: function (xhr) {
$('#errorDisplay').html('Error: '+ xhr.status +'' +xhr.statusText);
}
});
我得到了图像,但没有将可拖放的效果应用于这些产品。我没有提取我需要的所有信息吗?
这是与此过程一起使用的拖放脚本:
$(document).ready(function(){
var xhr;
if (window.XMLHttpRequest) {
xhr = new XMLHttpRequest();
}else if (window.ActiveXObject) {
xhr = new ActiveXObject("sxml2.XMLHTTP");
}else {
throw new Error("Ajax is not supported by this browser");
}
$(".product img").draggable({
containment: 'document',
opacity: 0.6,
revert: 'invalid',
helper: 'clone',
zIndex: 100
});
$("div.content.drop-here").droppable({
drop:
function(e, ui)
{
var param = $(ui.draggable).attr('src');
if($.browser.msie && $.browser.version=='6.0')
{
param = $(ui.draggable).attr('style').match(/src=\"([^\"]+)\"/);
param = param[1];
}
addlist(param);
}
});
});
谢谢,
马特