Показать сообщение отдельно
  #3 (permalink)  
Старый 09.08.2014, 00:09
Интересующийся
Отправить личное сообщение для Sergio022 Посмотреть профиль Найти все сообщения от Sergio022
 
Регистрация: 08.08.2014
Сообщений: 25

Rise,
Так работает

var price_per_day_dop1 = 5; // Стоимость доп. 1 взрослого
var price_per_day_dop2 = 4; // Стоимость доп. 2 взрослого
var price_per_day_dop3 = 3; // Стоимость доп. 3 взрослого
var price_per_day_dop4 = 2; // Стоимость доп. 4 взрослого
var price_per_day_dop5 = 1; // Стоимость доп. 5 взрослого


Так не работает
var price_per_day_dop1 = parseFloat(prices.price_per_day_dop1);
var price_per_day_dop2 = parseFloat(prices.price_per_day_dop2);
var price_per_day_dop3 = parseFloat(prices.price_per_day_dop3);
var price_per_day_dop4 = parseFloat(prices.price_per_day_dop4);
var price_per_day_dop5 = parseFloat(prices.price_per_day_dop5);


Не пойму, как заставить получать значения переменных через JSON.

Есть условие в начале скрипта, если откроете

if (price_per_day_dop1 !=0) price_per_day_dop1_count = 1;
else price_per_day_dop1_count = 0;	
if (price_per_day_dop2 !=0) price_per_day_dop2_count = 1;
else price_per_day_dop2_count = 0;	
if (price_per_day_dop3 !=0) price_per_day_dop3_count = 1;
else price_per_day_dop3_count = 0;	
if (price_per_day_dop4 !=0) price_per_day_dop4_count = 1;
else price_per_day_dop4_count = 0;	
if (price_per_day_dop5 !=0) price_per_day_dop5_count = 1;
else price_per_day_dop5_count = 0;	
var dop_adult_count = price_per_day_dop1_count+price_per_day_dop2_count+price_per_day_dop3_count+price_per_day_dop4_count+price_per_day_dop5_count;


Оно не исполняется, так как сам аякс ниже находится. Если условия вставляю сюда

jq.ajax({
			url: BYTAjax.ajaxurl,
			data: dataObj,
			dataType: 'json',
			success:function(prices) {
				var tableRow = '';

то не работает.


jq.ajax({
			url: BYTAjax.ajaxurl,
			data: dataObj,
			dataType: 'json',
			success:function(prices) {
				var tableRow = '';
				// This outputs the result of the ajax request
				window.rateTableRowIndex++;
				var pricePerDay = parseFloat(prices.price_per_day);
				var pricePerChild = 0;
				price_per_day_dop1 = parseFloat(prices.price_per_day_dop1);
				price_per_day_dop2 = parseFloat(prices.price_per_day_dop2);
				price_per_day_dop3 = parseFloat(prices.price_per_day_dop3);
				price_per_day_dop4 = parseFloat(prices.price_per_day_dop4);
				price_per_day_dop5 = parseFloat(prices.price_per_day_dop5);
				
			// Определяем количество доп взрослых
if (price_per_day_dop1 !=0) price_per_day_dop1_count = 1;
else price_per_day_dop1_count = 0;	
if (price_per_day_dop2 !=0) price_per_day_dop2_count = 1;
else price_per_day_dop2_count = 0;	
if (price_per_day_dop3 !=0) price_per_day_dop3_count = 1;
else price_per_day_dop3_count = 0;	
if (price_per_day_dop4 !=0) price_per_day_dop4_count = 1;
else price_per_day_dop4_count = 0;	
if (price_per_day_dop5 !=0) price_per_day_dop5_count = 1;
else price_per_day_dop5_count = 0;	
var dop_adult_count = price_per_day_dop1_count+price_per_day_dop2_count+price_per_day_dop3_count+price_per_day_dop4_count+price_per_day_dop5_count;


			// Определяем количество доп детей
if (price_per_day_child_dop1 !=0) price_per_day_child_dop1_count = 1;
else price_per_day_dop1_count = 0;	
if (price_per_day_child_dop2 !=0) price_per_day_child_dop2_count = 1;
else price_per_day_child_dop2_count = 0;	
if (price_per_day_child_dop3 !=0) price_per_day_child_dop3_count = 1;
else price_per_day_child_dop3_count = 0;	
if (price_per_day_child_dop4 !=0) price_per_day_child_dop4_count = 1;
else price_per_day_child_dop4_count = 0;	
if (price_per_day_child_dop5 !=0) price_per_day_child_dop5_count = 1;
else price_per_day_child_dop5_count = 0;

			//Определяем кол-во доп детей
dop_child_count = price_per_day_child_dop1_count+price_per_day_child_dop2_count+price_per_day_child_dop3_count+price_per_day_child_dop4_count+price_per_day_child_dop5_count;

			//Определяем итоговую сумму за доп детей и взрослых
dop_adult_price = price_per_day_dop1+price_per_day_dop2+price_per_day_dop3+price_per_day_dop4+price_per_day_dop5;
dop_child_price = price_per_day_child_dop1+price_per_day_child_dop2+price_per_day_child_dop3+price_per_day_child_dop4+price_per_day_child_dop5;
				
				tableRow += '<tr>';
				tableRow += '<td>' + dateValue + '</td>';
				//вывод таблицы со стоимостью
				if (window.accommodationIsPricePerPerson) {
					pricePerChild = parseFloat(prices.child_price);
					tableRow += '<td>' + adults + '</td>';
					tableRow += '<td>' + window.currencySymbol + pricePerDay + '</td>';
					tableRow += '<td>' + children + (window.accommodationCountChildrenStayFree > 0 ? ' *' : '') + '</td>';
					tableRow += '<td>' + window.currencySymbol + pricePerChild + '</td>';
				} 
				
				if (window.accommodationIsPricePerPerson) {
					children = children - window.accommodationCountChildrenStayFree;
					children = children >= 0 ? children : 0;
					
					if (adults <= max_count) dop_adult_price=0;

				if ((adults-max_count)==1) dop_adult_price=price_per_day_dop1;
				if ((adults-max_count)==2) dop_adult_price=price_per_day_dop1+price_per_day_dop2;
				if ((adults-max_count)==3) dop_adult_price=price_per_day_dop1+price_per_day_dop2+price_per_day_dop3;
				if ((adults-max_count)==4) dop_adult_price=price_per_day_dop1+price_per_day_dop2+price_per_day_dop3+price_per_day_dop4;
				if ((adults-max_count)==5) dop_adult_price=price_per_day_dop1+price_per_day_dop2+price_per_day_dop3+price_per_day_dop4+price_per_day_dop5;

alert (dop_adult_price);


алерт выдает ноль, а должен выдавать сумму равную 150 = (10+20+30+40+50)

Последний раз редактировалось Sergio022, 09.08.2014 в 00:16.
Ответить с цитированием