[英]jQuery - Checking an input box against another input box in a PHP while loop
在編寫訂單提交頁面時,我遇到了一個很大的問題,該頁面的目的是為訂單提出爭議-只要填寫兩個字段,但前提是一個字段小於另一個字段。
基本上,一個是下拉列表,另一個是“糾紛”框,查詢如下:
如果DisputesTextBox =“”和一個下拉框=“ Please Select ...”
一切都很好-啟用了提交按鈕
如果DisputesTextBox!=“”和下拉框=“請選擇...”
錯誤(反之亦然,所以如果有爭議,但dropwn =請選擇...)-提交按鈕已禁用
如果DisputesTextox!=“”和下拉框=“ Other”
一切都很好-啟用了提交按鈕
如果DisputesTextBox>發貨箱
錯誤-提交按鈕已禁用
<table>
<thead>
<tr><th>Item ID</th><th>Description</th><th>Dispute Quantity</th><th>Shipped Quantity</th><th>Ordered Quantity</th><th>Reason</th></tr>
</thead>
<tbody>
<?php
$data = mysql_query("SELECT * FROM `artran09` WHERE `invno` = '$invoiceno'") or die(mysql_error());
echo "<center>";
$i = -1;
echo "<form action=\"submitdispute.php?invno=".$invoiceno."&ordate=".$placed."\" method=\"POST\" onsubmit=\"return confirm('Are you sure you are ready to dispute your order?');\">";
while ($info = mysql_fetch_array($data)) {
$i += 1;
echo "<tr>";
echo "<td>".$info['item']."</td>";
echo "<td>".$info['descrip']."</td>";
echo "<td><input type=\"text\" input name=".$i." onKeyPress=\"return numbersonly(this, event)\" maxLength=\"3\"></td>";
echo "<td><input type=\"text\" value=".$info['qtyshp']." onKeyPress=\"return numbersonly(this, event)\" maxLength=\"3\" disabled=\"disabled\"></td>";
echo "<td><input type=\"text\" value=".$info['qtyord']." onKeyPress=\"return numbersonly(this, event)\" maxLength=\"3\" disabled=\"disabled\"></td>";
echo "<td><select name = \"reason$i\">";
echo "<option>Please Select...</option>";
echo "<option>Short/Not received</option>";
echo "<option>Damaged Goods</option>";
echo "<option>Product Not Ordered</option>";
echo "</select></td>";
echo "</tr>";
}
?>
</tbody>
</table>
</div>
</div>
<p><input type = "submit" value = "Dispute" name ="Submit">
</form>
謝謝,希望任何人都能提供幫助!
針對Wolf /任何可以提供幫助的人進行了編輯-此處的代碼內容如下:
-我編輯的代碼-
function validateSubmit(){
// this will loop through each row in table
// Make sure to include jquery.js
$('tr').each( function() {
// Find first input
var input1 = $(this).find('input').eq(0);
var qty1 = input1.val();
// Find Second input
var input2 = $(this).find('input').eq(1);
var qty2 = input2.val();
// Find third input
var input3 = $(this).find('input').eq(2);
var qty3 = input3.val();
// Find select box
var selectBx = $(this).find('select');
var selectVal = selectBx.val();
// Add your validation code here for the inputs and select
// Return true if all validations are correct
// Else return false
if(qty1 = "" && selectVal = "Please Select...") {
return true;
alert("You have an error somewhere, please check over your quantites.");
break;
}
if (qty1 > qty2) {
return false;
alert("You have an error somewhere, please check over your quantites.");
break;
}
});
}
return true;
alert("You have an error somewhere, please check over your quantites.");
break;
如果調用return,則當前函數的執行將立即停止並返回該值。 這意味着在執行return語句之后什么也沒有。 alert()
將不會運行,因為函數以return true
結尾。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.