Xin giúp đỡ lấy dữ liệu

javascript

(Hoàng) #1


Cho e hỏi kiểu dữ liệu mà alert thông báo này là j ạ, nếu là number sao nó khoảng có khoảng trống lớn vậy ạ, lúc xuất console.log cũng vậy

$(document).ready(function () {

    $(".num-order").change(function () {
        var price = $(this).closest('tr').find('.price').text();
        var num_order = $(this).val();

//        console.log(price);
        $.ajax({
            url: '?mod=cart&act=update',
            method: 'POST',
            data: {num_order: num_order, price: price},
            dataType: 'text',
            success: function (data) {
//                alert(data);
                console.log(data);
                $(this).closest('tr').find('.sub-total').text(data);
            },
        });

    });
});

(SITUVN.gcd) #2

Phần sau (back-end) nó gửi sao thì nhận vậy.
Thế ở url: '?mod=cart&act=update bạn xử lý gì?

Lấy giá từ thẻ HTML à? :smiling_imp:


(Hoàng) #3

Mấy cảm ơn bạn đã vào giúp mình, mấy hôm nay mình bận nên quên mất
Mình đã lấy được 2 giá trị trên rồi nha, mà giờ để đẩy vào cái sub-total mình cứ sai
Mình đưa nó sang mô hình MVC nên hơi khác tí

/// ?mod=cart&act=update lần trước
function updateAction(){
    $price = (int)$_POST['price'];
    $num_order = (int)$_POST['num_order'];
    $total = $price * $num_order;
    echo $total;
}

Trong này mình muốn đẩy dữ liệu của $total vào .sub-total thì làm thế nào ạ

success: function (data) {
//                $('.sub-total').text(data);
              
               
 },

(SITUVN.gcd) #4

Sao không tính bằng Javascript luôn cho xong.


(Hoàng) #7

bạn có thể giúp mình cách lấy luôn được ko ạ, mình bí quá

cái này mình làm theo ajax nha, cho nó tự động hết ạ,khi mình thay đổi số lượng thì thành tiền cũng thay đổi

Phần html đây ạ

Làm sao để khi thay đổi số lượng ở 1 sp thì sub-total của sản phẩm đó thay đổi thôi ạ

success: function (data) {
//                $('.sub-total').text(data);   // sai
              
               
 },

(SITUVN.gcd) #8
$(document).ready(function () {

    $(".num-order").change(function () {
        var price = $(this).closest('tr').find('.price').text();
        var num_order = $(this).val();

var me = this; // từ đây...
        $.ajax({
            url: '?mod=cart&act=update',
            method: 'POST',
            data: {num_order: num_order, price: price},
            dataType: 'text',
            success: function (data) {
                $(me).closest('tr').find('.sub-total').text(data); // ...đến đây
            },
        });

    });
});

(Hoàng) #9

cảm ơn bạn ạ, $(me) mình chưa thấy qua, để mình tìm hiểu xem,cảm ơn ạ


(SITUVN.gcd) #10

Đặt tên nó là gì chẳng được, quan trọng là lấy được cái this bên ngoài để truyền vào bên trong hàm success().


(Hoàng) #11

à nãy mình nhìn ko rõ nên ko thấy gán biến phía trên, mình hiểu rồi nha, thank you ạ


83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?