2015-01-28 1 views
0

Im пытается получить значение ввода в URL-адрес действия кнопок до нажатия кнопки.Получить ввод перед отправкой для вставки в действие url

Мне нужно получить значение:

id="qty<?php echo $i;?>" 

В, где он говорит:

<?php echo VALUE OF $qtyforaction; ?> 

Мой код:

 <?php $i = $_product->getId();?> 

      <form action="<?php echo $this->helper('checkout/cart')->getAddUrl($_product); ?>" method="post" id="product_addtocart_form_<?php echo $_product->getId()?>"<?php if($_product->getOptions()): ?> enctype="multipart/form-data"<?php endif; ?>> 

       <input type="text" name="qty" id="qty<?php echo $i;?>" maxlength="12" value="1" title="Qty" class="cartnum" /> 

       <?php $qtyforaction = 'qty'.$i; ?> 
       <?php echo $qtyforaction; ?> 


       <button type="button" class="addtocartbutton button btn-cart" onclick="setLocation('<?php echo $this->helper('checkout/cart')->getAddUrl($_product); ?>qty/<?php echo VALUE OF $qtyforaction; ?>')" ><span><span>Order Again</span></span></button> 

      </form> 

ли я использовать JavaScript для получения это в строку url? Мой javascript немного вязок, что-то вроде этой работы?

 <script type="text/javascript"> 
     var something= document.getElementById('<?php echo $qtyforaction;?>'); 
    </script> 

ОБНОВЛЕНИЕ С ПОЛНОЙ КОД:

<?php 
if (Mage::getSingleton('customer/session')->isLoggedIn()) { 

/* Get the customer data */ 
$customer  = Mage::getSingleton('customer/session')->getCustomer(); 
/* Get the customer's email address */ 
$customer_email = $customer->getEmail(); 

} 

$collection = Mage::getModel('sales/order')->getCollection()->addAttributeToFilter('customer_email', array(
'like' => $customer_email 
)); 



$uniuqProductSkus = array(); 

foreach ($collection as $order) { 

    $order_id = $order->getId(); 
    $order = Mage::getModel("sales/order")->load($order_id); 
    $ordered_items = $order->getAllItems(); 
     foreach ($ordered_items as $item) 
     { 
     if (in_array($item->getProduct()->getSku(), $uniuqProductSkus)) { 
     continue; 
     } else { 
      array_push($uniuqProductSkus, $item->getProduct()->getSku()); 

      $_product     = Mage::getModel('catalog/product')->load($item->getProductId()); 
      $product_small_image_path = Mage::helper('catalog/image')->init($_product, 'small_image')->resize(200); 
      $product_thumbnail_path = Mage::helper('catalog/image')->init($_product, 'small_image')->resize(150); 
      $summaryData    = Mage::getModel('review/review_summary')->load($item->getProductId()); 

      echo "<li>"; 

      echo "<div class='previous-name'><p><a style='color:black; font-weight:bold; font-size:14px;' href='" . $_product->getProductUrl() . "'>"; 
      echo $item->getName() . "</a></p></div>"; 

      echo "<div class='previous-image'><a href='" . $_product->getProductUrl() . "'>"; 
      echo "<img src='" . $product_small_image_path . "' />"; 
      echo "</a></div>"; 

      echo "<div class='previous-rating'>"; 
      echo "<p><a style='color:black; font-weight:bold; font-size:14px;' href='" . $_product->getProductUrl() . "#product_tabs_review_tabbed'>Review this beer now</a></p>"; 

      echo $summaryData->getRatingSummary() . '% Would buy again <br/>'; 

      echo "<div class='rating-box' style='float:left;'>"; 
      echo "<div class='rating' style='width:" . $summaryData->getRatingSummary() . "%'></div></div>"; 
      echo "</div>"; 


      /**echo "<div class='previous-button'>"; 
      echo '<button type="button" title="Add to Cart" class="button btn-cart" onclick="setLocation(\''; 
      echo $this->helper('checkout/cart')->getAddUrl($_product); 
      echo '\')"><span><span>Order Again</span></span></button>'; 
      echo "</div>";**/ 

      ?> 

      <?php $i = $_product->getId();?> 
      <div class='previous-button'> 
      <form action="<?php echo $this->helper('checkout/cart')->getAddUrl($_product); ?>" method="post" id="product_addtocart_form_<?php echo $_product->getId()?>"<?php if($_product->getOptions()): ?> enctype="multipart/form-data"<?php endif; ?>> 

       <input type="text" name="qty" id="qty<?php echo $i;?>" maxlength="12" value="1" title="Qty" class="cartnum" /> 

       <?php $qtyforaction = 'qty'.$i; ?> 

       <script type="text/javascript"> 
        var xy = document.getElementsByTagName("input")[0].getAttribute("qty"); 
        var x = "<button type='button' class='addtocartbutton button btn-cart' onclick='setLocation()'><span><span>Order Again</span></span></button>"; 
        document.getElementById("buttonaddcart").innerHTML = x; 
       </script> 
       <div id="buttonaddcart"> 
       <button type="button" class="addtocartbutton button btn-cart" onclick="setLocation('<?php echo $this->helper('checkout/cart')->getAddUrl($_product); ?>qty/')" ><span><span>Order Again</span></span></button> 
       </div> 

      </form> 
      </div> 


      <?php 
      echo "<div class='previous-clear'></div>"; 

      echo "</li>"; 

    } 
} 
} 
?> 

ответ

0

Вам нужно получить значение атрибута ID:

var x = document.getElementsByTagName("input")[0].getAttribute("id"); 

Но как вы планируете использовать PHP эхо эту переменную если PHP загружен и сделан до того, как Javascript даже начнет играть? Вы можете использовать Javascript, хотя для отображения этой переменной на странице, если это все, что вам нужно.

Если вы что-то в вашем HTML, чтобы предназначаться, вы могли бы сделать это следующим образом:

document.getElementById("result").innerHTML = x; 

Но в любом случае, получить значение атрибута действия ...

var y = document.getElementsByTagName("form")[0].getAttribute("action"); 

Затем установите действие приписывать это + в Кол ...

document.getElementsByTagName("form")[0].setAttribute("action", x + y); 

это должно работать для вас, если нет, то попробуйте упаковка x + y в дополнительных круглых скобках ... ("action", (x + y));

+0

Спасибо, теперь мне просто нужно отобразить эту переменную, как бы я это сделал? –

+0

Я обновил свой ответ для вас. – Slime

+0

спасибо, как обрабатывается javascript в петле php? Кажется, это работает для первого в цикле, но не после? –

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