2013-07-26 2 views
0

У меня есть страница в Codeigniter, в которой я могу установить количество продукта (кв.м), которое клиент хочет купить. Когда клиент устанавливает количество, я должен выполнить некоторые вычисления (о количестве, которое было установлено ранее), и я делаю это, когда Javascript устанавливает некоторые переменные. Теперь я хочу показать эти переменные на одной и той же странице (php), и она работает, но я не знаю, что мне делать, чтобы поместить эти переменные в значения скрытых входов, чтобы я мог отправить их на контроллер. Вот кодирование:Передача переменной javascript в скрытую форму в codeigniter

<input type="text" name="productQuantity"> 
<input type="button" class="button" onclick="return showHide();" value="Calculate Packs"> 

<script type="text/javascript" language="javascript">// <![CDATA[ 
    function showHide() { 
     var ele = document.getElementById("showHideDiv"); 
     if(ele.style.display == "block") { 
      ele.style.display = "none"; 
     } 
     else { 
<?php $pack = explode(' ', $pro->productPackSize); ?> 
       ele.style.display = "block"; 

       var val = document.getElementById('productQuantity').value; 
       document.getElementById('val').innerHTML = val; 
       var req = Math.round(val/<?php echo $pack[0]; ?>); 
       document.getElementById('req').innerHTML = req; 
       var total = req * <?php echo $pack[0]; ?>; 
       document.getElementById('total').innerHTML = total; 

      } 
     } 
     // ]]></script> 

<div id="showHideDiv" style="display:none;"> 
    <?php echo form_open('main/add_to_cart_validation/' . $pro->productId); ?> 
    To cover <strong id="val"></strong> sq.m, you will need <strong id="req"></strong> Packs 
    which is <strong id="total"></strong> sq.m in total</a> //the ids' here are working, i can show them in the page 

<input type="hidden" id="" value="" name="productPacks"> //how can i get the 'reg' variable here? 
<input type="hidden" id="" value="" name="productQuantity"> //the same here as above for 'total' variable 
<input type="submit" class="button" value="Add to Cart"> 
</form> 
</div> 

Спасибо за ваши ответы

ответ

0

Добавьте эти строки в состоянии еще после вашей математики:

document.getElementById("productPacks").value = val; 
document.getElementById("productQuantity").value = total; 
+0

Еще раз спасибо за ваши ответы, он работает северо-запад, но у меня есть еще одна проблема, которая когда вар «общая 'is '10 .4' например, и мой скрытый: он хранится в скрытом вводе как '104', может быть, кто-нибудь знает, что должен ли я это сделать? – Panagiotis

+0

Примите ответ, который он сработал для вас, а для другого запроса см. Эту ссылку http://jsfiddle.net/3GneR/ –

+0

Я ничего не вижу в этой ссылке .. – Panagiotis

0

Starty, давая вашему входы идентификатор, а затем вы можете передать значения, как это:

document.getElementById('myField').value = total; 
0

Это очень simple.You сделайте это точно так же.

var MyHiddenValue = document.getElementById('myHiddenField').value; 

alert(MyHiddenValue); 

WORKING FIDDLE

Смежные вопросы