0

我是 jquery 新手,所以这可能看起来很简单,但我看不到诀窍:p
我使用的是 jquery 1.2.6(而且我无法升级它:/)这就是我使用 livequery 插件的原因.

上下文只是 eshop 中购物车的更新。
问题是我在 update_it.php 中没有得到我想要的“myid”值。
- 使用示例 1(请参见下面的代码)它正在工作!拨打电话后,我在 update_it.php 中为“myid”获得了良好的价值。但它是硬编码的,我希望它是通用的(参见示例 2)。
- 对于示例 2,它不起作用 :( 警报正在起作用,呼叫正在起作用,但我没有得到“myid”的任何值

这是我的javascript:

$(document).ready( function () {
    function update_it() {
        $.ajax({ 
            type: "POST",
            url: "./update_it.php",
            dataType: "json",
            data: "myid="+$(this).val(),
            success: function(msg){
                $("div#cart-full").html(msg.fullcart);
                $("div#cart").html(msg.mincart);
            },
            error : function(xhr, desc, e) {
                alert("ko - " + xhr.status);
            }
       });
    }

    // Example 1
    $("#mycheckbox_1").livequery("click", update_it);

    // Example 2
    $("input:checkbox[id^=mycheckbox_]").each(function(){
         $(this).livequery("click", update_it);
    });

});

谢谢你的帮助 !

4

1 回答 1

1

jquery页面第二个选择的例子涉及到第二组引号:jQuery("[attribute^='value']")

试试 $("input:checkbox[id^='mycheckbox_']").each(function(){

编辑:

在这种情况下,请尝试以下示例中的“ON”关键字,而不是 livejquery。 http://jsfiddle.net/4LaQX/2/

$(function () {
    $(document).ready(function(){
        $("[id^='hoverme_']").each(function () {
          $(this).on("click", listen);  
        });
    });

    function listen(){
        alert($(this).html());
    }
});

在 Jquery 1.2.6 的情况下,click() 关键字

http://jsfiddle.net/4LaQX/5/

$(this).click(doSomethingFunc);


编辑

$(document).ready( function () {


    // Example 2
    $("input:checkbox[id^=mycheckbox_]").click(update_it);


});
function update_it() {
            $.ajax({ 
                type: "POST",
                url: "./update_it.php",
                dataType: "json",
                data: "myid="+$(this).val(),
                success: function(msg){
                    $("div#cart-full").html(msg.fullcart);
                    $("div#cart").html(msg.mincart);
                    $("input:checkbox[id^=mycheckbox_]").unbind("click");
                    $("input:checkbox[id^=mycheckbox_]").bind("click");
                },
                error : function(xhr, desc, e) {
                    alert("ko - " + xhr.status);
                }
           });
        }
于 2013-05-21T10:11:36.283 回答