0

我有一个这样的脚本:

<script type="text/javascript">
function DeletePublisher(publisherid) {
jConfirm('Are you sure you want to delete this publisher?', 'Delete publisher', function(r) { if (r)

scriptitem = document.createElement('script');
scriptitem.type = 'text/javascript';
scriptitem.src = 'includes/publishers/delete-publisher.php?publisherid=' + publisherid;
scriptitem.id = 'ajax';
document.body.appendChild(scriptitem);
setTimeout('document.body.removeChild(document.getElementById("ajax"))', 500);  

$.jGrowl('Publisher deleted');
window.location.reload();
});
}
</script>

我在表中列出这样的行:

TD ROWS HERE...
<td class="unpaid-th"><strong><?php echo $publisher_unpaid; ?></strong></td>
                <td class="action-th">
                    <ul class="button-table-head">
                        <li><div class="button-head edit-icon"><a href="#" class="sweet-tooltip" data-text-tooltip="Edit" data-style-tooltip="tooltip-mini-slick"><span>Edit</span></a></div></li>
                        <li><div class="button-head delete-icon"><a href="#" class="sweet-tooltip" data-text-tooltip="Delete" data-style-tooltip="tooltip-mini-slick" onclick="DeletePublisher('<?php echo $publisher_id; ?>')"><span>Delete</span></a></div></li>
                    </ul>
                </td>

现在应该发生的是当我单击删除链接时 - 它应该发布/获取(无论如何 - 因为我在侦听器脚本上使用 $_REQUEST)到 php 脚本,该脚本将获取发布者的 id 并将其从数据库中删除......但是问题似乎是实际上没有发送 ID 来删除脚本,我已经尝试了一切......

它在源代码中显示很好,如 onclick="DeletePublisher('152')" 并提示警报、信息等......但它似乎没有发送 ID ......或者现在甚至可能没有调用 LISTENER 脚本(不要'不知道如何测试它):(

任何想法这里有什么问题(或者可能是不同的方法?)?

非常感谢 !

4

2 回答 2

1

我会推荐使用像下面这样使用 jQuery 的 AJAX

function DeletePublisher(publisherid) {
  jConfirm('Are you sure you want to delete this publisher?', 'Delete publisher', function(r) { if (r)
    $.ajax({
      type: "POST", //or GET
      url: 'includes/publishers/delete-publisher.php?publisherid=' + publisherid,
      data: '',
      success: function(response){
        $.jGrowl('Publisher deleted');
        window.location.reload();
      }
    });
  });
}
于 2012-09-20T17:04:28.620 回答
0

我认为您正在尝试做的是 JSONP 调用。我认为缺少的是响应应该包含在 javascript 调用中。方法的名称应与回调方法的名称相同。

但我认为你不需要继续使用 JSNOP 方法,因为我看到你的脚本在同一个域上。所以试着做一个简单的ajax调用。你可以试试jquery。它将照顾浏览器的兼容性。

于 2012-09-20T17:02:38.123 回答