我有一個有一些文本字段的表單。文本字段可能會根據數據庫表增加或減少。如果數據庫中有3個倉庫,它將顯示3個文本框,其中包含可用數量作爲佔位符。現在用戶必須在每個框中輸入數量不超過佔位符中給定的數量。如果用戶輸入的值超過可用值(將顯示爲佔位符),我該如何進行驗證?問題是驗證應該根據foreach循環。我的代碼如下,如何在foreach裏面進行驗證
<?php
if (!empty($ware_details)) {
foreach ($ware_details as $data) {
?>
<div class="form-group">
<label for="exampleInputEmail1"><?php echo $data->warehouse_name; ?></label>
<input type="number" id="return_pro" class="form-control" base_url="<?php echo site_url(); ?>" name="<?php echo $data->wh_warehouse_id;?>" placeholder="<?php echo $data->wh_product_qty; ?> Available">
<div class="dataDrop"></div>
<input type="hidden" id="quantity" value="<?php echo $data->wh_product_qty; ?>"/>
</div>
<?php } }?>
這裏你看到文本框的數量取決於foreach循環。那我該如何驗證? Javascript或Ajax是好的。 我想是這樣的,
<?php foreach ($ware_details as $data) {?>
<script>
function check()
{
var stock = document.getElementById('quantity').value;
var return_stock = document.getElementById('return_pro').value;
if (parseFloat(stock) < parseFloat(return_stock))
{
alert("Return product can't be more than total stock");
document.getElementById('return_pro').focus();
return false;
}
//alert(return_stock);
return false;
}
但我知道這是完全錯誤的。任何想法?
如果沒有輸出任何東西到腳本(以使不同的功能),那麼你就需要多個腳本。 – Bergi
你想要驗證什麼?我無法在表單中看到任何'#quantity'元素。如果你打算有多個,你不能使用一個ID,但應該使用一個類。然後,您可以選擇輸入元素並使用javascript進行迭代。 – Bergi
請檢查。這是一個有問題的錯誤。我已更新代碼 –