2013-05-29 80 views
0

我有一個表格顯示一些值。在每一行中都有一個Order_ID和一個按鈕。單擊按鈕時從表格中獲取價值

如何在$ Order_ID中獲取我的值,以便在單擊按鈕時顯示(警告)?

<tbody> 

<?php 

foreach($menuextra_result as $transaction) 
{ 
?> 
<tr> 



$order_id = isset($transaction['order_id'])?($transaction['order_id']) :""; 
?> 
<?php if($order_id){ ?> 
<td><div id="orderID"><?= $order_id ?></a></td> 
<?php } else {?> 
<td><div ><span style="color:red">MANGLER</span></td> 
<?php }?> 



style="color:red">MISSING</span></td> 

         <?php }?> 

//There's more here, but did not bother to show it, because it was irrelevant. 

<td><input type="submit" onclick="getElementById" value="Yes "></td> 
<?php } 
?>   

</tr> 
<?php 
} 
?> 

</tbody> 

這是我試圖

<script type="text/javascript"> 
function getElementById() 
{ 
    el = document.getElementById('order_id'); 
     alert(el); 

} 
</script> 

但在點擊按鈕時,什麼也沒發生

+0

你在找什麼?對於每一行,您都有一個ID和一個按鈕?然後點擊,你想提醒該特定行的ID? – Ahmed

+0

是的,謝謝:) – Zaz

+1

有沒有ID'order_id'的元素? –

回答

0

你需要打印$ ORDER_ID到您的HTML某處。您可以使用隱藏輸入:

<input name="order_id" id="order_id" value="<?php echo $order_id; ?>"> 

然後您可以提交表單或獲取值。

1

table.php

//assuming you have done you loop work 
<table> 
<tr> 
<td> 
<?php echo $row['name']?> 
</td> 
<td><input type="button" value="click me" onclick="clickMe(<?php echo $row['id']?>)" /></td> 
</tr> 
</table> 

clickme油膏是這樣

function clickMe(id) { 
alert(id); 
} 

您將傳遞一個參數clickMe()功能和參數是ID

0

你不能從你的getElementById網頁,如果它不存在。 所以解決方案很簡單,只需在桌面上添加一個隱藏的輸入元素即可。你可以從你的腳本中獲得id。

<tbody> 

<?php 

foreach($menuextra_result as $transaction) 
{ 
?> 
<tr> 

<?php 
$order_id = isset($transaction['order_id'])?($transaction['order_id']) :""; 
?> 

//There's more here, but did not bother to show it, because it was irrelevant. 

<td> 
    <input type="hidden" name="order_id" id="order_id" value="<?php echo $order_id;?>"> 
    <input type="submit" onclick="getElementById" value="Yes "></td> 
<?php } 
?>   

</tr> 
<?php 
} 
?> 

</tbody> 
1

首先,不要使用id,因爲您有多個這樣的元素。您可以使用類來代替:

<div class="orderID"><?= $order_id ?></div> 

而且固定你得到了,結束標記爲<div>無效的HTML是</div>,而不是</a>

其次,改變點擊按鈕發送到功能:

<input type="submit" onclick="FindOrder(this);" value="Yes " /> 

最後這個功能應該做的伎倆:(通過搜索 「兄弟」 的div)

function FindOrder(oButton) { 
    var oRow = oButton.parentNode; 
    while (oRow && oRow.tagName.toLowerCase() !== "tr") 
     oRow = oRow.parentNode; 
    var arrDivs = oRow.getElementsByTagName("div"); 
    var orderDiv = null; 
    for (var i = 0; i < arrDivs.length; i++) { 
     if (arrDivs[i].className === "orderID") { 
      orderDiv = arrDivs[i]; 
      break; 
     } 
    } 
    if (orderDiv != null) { 
     var orderNumber = orderDiv.innerHTML; 
     alert("order is " + orderNumber); 
    } else { 
     alert("order not found"); 
    } 
} 

Live test case

相關問題