我遇到了 js $post 无法与 Jquery mobile 一起使用的问题。基本上,我的购物篮中有一个产品列表,而删除单个产品可以使用不同的按钮正常工作,使用复选框并尝试大量删除它是行不通的。
这是javascript
$('.usunZbiorczo').click(function() {
var zaznaczone = "";
$(".zaznacz").each(function() {
if ($(this).is(':checked'))
{
zaznaczone = zaznaczone +
$(this).val() + "|";
}
});
if (zaznaczone != "")
{
$post('<?php echo url::site("koszyk/ajaxUsunZbiorczo/", "http"); ?>', {zaznaczone: zaznaczone}, function(xml) {
window.location.replace("/koszyk")
});
}
//if ($(".zaznacz").filter(':checked').length == 0) return;
//$('#usunZbiorczo').dialog("open");
//e.preventDefault();
});
这是复选框:
<?php echo form::checkbox("zaznacz_" . $pozycja->ks_Id, $pozycja->ks_Id, false, array("class" => "zaznacz", "data-inline" => "true", "data-iconpos" => "top", "data-mini" => "true", "style"=>"visibility: hidden")) ?>
它来自 Kohana 框架,基本上是一个生成简单 HTML 复选框代码的 PHP 函数。在数组中你有标准的 HTML 属性。
这是接收它的 PHP 文件:
$zaznaczone = explode("|", $_POST["zaznaczone"]);
foreach ($zaznaczone as $zazn) {
if ($zazn == "")
continue;
$koszyk = ORM::factory("Koszyk")
->where("ks_Id", "=", $zazn)
->and_where("ks_uzytkownikId", "=", zalogowany::id())
->and_where("ks_magazynId", "=", magazyn::aktualny())
->and_where("ks_kontrahentId", "=", kontrahent::aktualny())
->find();
$koszyk->delete();
}
ORM 的东西也来自 Kohana,基本上是在 MySQL 基础上做的。但我的问题是 javascript 中的 $post 甚至不会关闭......该页面不会向第二个 PHP 发布任何内容。
哦,这里也是启动整个操作的按钮,不好意思也是Kohana的,虽然生成的很简单
<?= html::anchor("#", html::image("media/strona/img/delete.gif") . " " . __('Usuń'), array("class" => "usunZbiorczo", "style" => "margin-left: 10px;")) ?>