.load() с данными

#javascript #php #modal-dialog

#javascript #php #модальный диалог

Вопрос:

Я хочу загрузить данные на страницу оформления заказа, используя .load() для загрузки страниц в модальном окне. Данные, которые необходимо загрузить, — это значение цены доставки, которое должно быть использовано на загруженной странице.

JS

 function totalCalc() {
var shipping = ($('#shippingform input[name="shipping"]').val());
$('#cartdialog').load("/ash/shop/checkout.php",[$('#shippingform input[name="shipping"]')]);
alert(shipping);
}
  

CHECKOUT.PHP

 $myTotal = ($subtotal   $_POST['shipping']);
  

Мне нужно, чтобы значение, которое отображается через «alert (shipping);», было полезным значением на checkout.php . Вы увидите, что я пытаюсь $_POST[] сделать это в переменной php, но это не сработает. Должно быть, я отправляю данные неправильно…

Ответ №1:

Согласно jQuery API, данные, отправленные в формате строки запроса через .load() , обрабатываются как GET. Данные, отправленные в виде объекта JSON, обрабатываются как POST. В основном, отправляйте его следующим образом:

 .load("/ash/show/checkout.php", {shipping: shipping});
  

Комментарии:

1. При этом checkout.php страница больше не будет загружаться в div #cartdialog

2. Извините, неважно, это было просто слово с ошибкой (магазин не показывать). Это сработало!! Спасибо!

Ответ №2:

Похоже, вы используете jQuery:http://api.jquery.com/jQuery.post / или, если вы хотите получить надлежащий контроль над ним, используйте метод ajax: http://api.jquery.com/jQuery.ajax /

В качестве альтернативы, вы могли бы добавить стоимость доставки к URL-адресу и использовать $_GET