当前位置: 首页 > 知识库问答 >
问题:

使用jQuery检查一个字段与另一个字段

终彬郁
2023-03-14

我在编程一个订单提交页面时遇到了一个相当大的问题,该页面的目的是提交一个订单的争议--提供两个字段被填写,但只有当一个字段少于另一个字段时。

基本上,一个是下拉,另一个是争端框,查询如下:

如果DispotestExtBox=“”而下拉框=“请选择...”

一切正常-提交按钮已启用

如果DisportestExtBox!=“”而下拉框=“请选择...”

错误(反之亦然,因此如果填充了Disponents但dropwn=请选择...)-“提交”按钮已禁用

如果DispotestExtox!=“”且下拉框=“其他”

一切正常-提交按钮已启用

如果DispotestExtBox>shippedbox

错误-“提交”按钮已禁用

<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;
        }
   });


}

共有1个答案

裴和怡
2023-03-14

更改以下行

onsubmit=\"return confirm('Are you sure you are ready to dispute your order?');\"

onsubmit=\"return validateSubmit();\"

然后编写函数

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);

      // Find Second input
      var input2 = $(this).find('input').eq(1);

      // Find third input
      var input3 = $(this).find('input').eq(2);

      // Find select box
      var selectBx = $(this).find('select');

      // Add your validation code here for the inputs and select
      // Return true if all validations are correct
      // Else return false

   });
}

请注意,提交按钮将一直启用。但只有当验证成功时,提交才会工作。

 类似资料:
  • 问题: 我已经在lucene索引中索引了NGA Geonames地名录。我需要模糊查询一个字段(地名),但将查询限制为具有特定国家代码的记录。下面是我正在运行的一个示例查询 我没有使用SOLR,我已经做了大量的研究和尝试,但我没有明确的答案,可能是我的速度太慢了。 我想对印度进行模糊搜索,但我只想要与“in”(国家代码)完全匹配的记录

  • 问题内容: 如何查询或过滤一个字段不等于另一个字段?即,其中document1.city1.name不等于document1.city2.name。 这个的一些版本? http://www.elasticsearch.org/guide/zh- CN/elasticsearch/reference/current/search-request-script- fields.html 问题答案: 是

  • 我开始使用验证框架用jax-rs验证json请求 是否可以根据另一个字段验证一个字段? 提前致谢

  • 问题内容: 我在具有以下映射的文档中有两个字段: 我如何找到所有与匹配的文档?禁用脚本是否有可能? 问题答案: 基本上,您需要使用脚本来执行此操作-即使由于完全将沙盒化了Lucene表达式而禁用了脚本,这也可能会起作用:

  • 例如,243是3的完美幂,因为243=3^5。 我以前一直在使用,我认为它工作得很好,但后来我用上面的示例尝试了它,由于浮点运算,它实际上返回了4.99999999999。所以它只适用于非常小的数字,我发现不到大约100个。 我想我可以用一个循环来重复乘法。。。i、 将i设置为3,然后设置为9,然后设置为27,然后设置为81,然后设置为243,这等于目标值,所以我们知道这是一个完美的幂。如果它达到

  • 问题内容: 我有以下查询: 假设&为自动递增标识列: 我想要达到的目标: 临时表包含由刚刚插入的行和中的ID组成的元组。 我偶然发现的内容:不能在该语句中使用,因为它不是有效的语法。 我该如何解决? 编辑:我正在使用SQL Server 2012。 问题答案: 您可能要探索: 参考: OUTPUT博士或:我如何学会不再担心和爱合并,作者亚当·麦克汉尼(Adam Machanic)