• Javascript 判断数据绑定中的A列和B列拼接组成的新值不能重复


    主要代码如下:

    1. replace() 方法用于在字符串中用一些字符替换另一些字符。 

    2. substring() 方法用于提取字符串中介于两个指定下标之间的字符。

    3. split() 方法用于把一个字符串分割成字符串数组。

    4. join() 方法用于把数组中的所有元素放入一个字符串。

    5.indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置,如果要检索的字符串值没有出现,则该方法返回 -1。

    一. Javascript 代码:

    //Javascript 判定数据绑定中的服务单编号+SN不能重复
    var val = "";
    var strVal = "";
    function save() {
        var tr = document.getElementById("grdResult").getElementsByTagName("tr");
        if (tr.length < 2) return;
       for (var i = 1; i < tr.length; i++) {
          td = tr[i].getElementsByTagName("td");
          if (td[2].children[0].innerText != "" || td[3].children[0].defaultValue != "") {
                   val = td[2].children[0].innerText.replace(" ", "").replace(" ", "") + "$" 
                       + td[3].children[0].value.replace(" ", "").replace(" ", "") + "," + val;
                      strval = val.substring(0, val.length - 1);
           }

         }
           var arrs = strval.split(",");
           var arr = arrs.join(",") + ",";
          for (var i = 0; i < arrs.length; i++) {
          if (arr.replace(arrs[i] + ",", "").indexOf(arrs[i] + ",") > -1) { 
               alert("列表中存在服务单编号+SN重复" + arrs[i]);
              break;
      }
    }
        val = "";
        strVal = "";//注意这里需要赋值为空,因为二次提交的时候会把前面的数据也保存到数组里面。
    }

    二. HTML 代码:

    <div style="200px;"><input onclick="save();" style=" float:right;" type="button" value="保存" /></div>
    <TABLE style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; BORDER-COLLAPSE: collapse; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid" id=grdResult class="Grid" rules=all cellSpacing=0 cellPadding=0>
    <tr class="GridHeader">
    <td style="WIDTH: 20px" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: center; BORDER-LEFT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=chkall title=all onclick="selectAllgetCheck('grdResult');" name=chkall value="" type=checkbox> </td>
    <td style="WIDTH: 200px; WHITE-SPACE: nowrap" align=center>部品代码</td>
    <td style="WIDTH: 200px; WHITE-SPACE: nowrap" align=center>服务单编号</td>
    <td style="WIDTH: 200px; WHITE-SPACE: nowrap" align=center>SN</td>
    <td style="WIDTH: 100px; WHITE-SPACE: nowrap" align=center>收货状态</td>
    <td style="WIDTH: 100px; WHITE-SPACE: nowrap" align=center>发货数量</td>
    <td class="hidden">&nbsp;</td>
    <td class="hidden">&nbsp;</td>
    <td class="hidden">&nbsp;</td></tr>
    <tr class="GridNormal" onmouseover="this.className='GridHover';" onmouseout="this.className='GridNormal';">
    <td align=center><INPUT style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; WIDTH: 100%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=grdResult_chkl_0 name=grdResult$ctl02$chkl value=70c3e59f-f786-e211-a6dd-00155d002d65 type=checkbox> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: left; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=grdResult_oldmaterialid_0 class="noemptyInput" disabled name=grdResult$ctl02$oldmaterialid value=键盘操作单元 height=25 type=text> </td>
    <td style="WHITE-SPACE: nowrap" align=center><A href="../services/servicesDetail.aspx?MasterID=fb4e1604-6b58-e211-91a2-00155d002d63">&nbsp;RP-2013010700002&nbsp;</A> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: left; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=grdResult_oldmodulenum_0 class="noemptyInput" disabled name=grdResult$ctl02$oldmodulenum value=0LTCW20237965-000050 type=text> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: left; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=grdResult_receiptstatus_0 class="noemptyInput" disabled name=grdResult$ctl02$receiptstatus value=未收货 type=text> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: right; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=grdResult_setoutnum_0 class="noemptyInput" disabled name=grdResult$ctl02$setoutnum value=1 type=text> </td>
    <td class="hidden"><INPUT id=grdResult_reSysID_0 name=grdResult$ctl02$reSysID value=fb4e1604-6b58-e211-91a2-00155d002d63 type=text></td>
    <td class="hidden"><INPUT id=grdResult_reoldmateriaID_0 name=grdResult$ctl02$reoldmateriaID value=9b3bebf6-0b45-e211-ba39-00155d002f0d type=text></td>
    <td class="hidden"><INPUT id=grdResult_repairtype_0 name=grdResult$ctl02$repairtype type=text></td></tr>
    <tr class="GridNormal" onmouseover="this.className='GridHover';" onmouseout="this.className='GridNormal';">
    <td align=center><INPUT style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; WIDTH: 100%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=grdResult_chkl_0 name=grdResult$ctl02$chkl value=70c3e59f-f786-e211-a6dd-00155d002d65 type=checkbox> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: left; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=grdResult_oldmaterialid_0 class="noemptyInput" disabled name=grdResult$ctl02$oldmaterialid value=键盘操作单元 height=25 type=text> </td>
    <td style="WHITE-SPACE: nowrap" align=center><A href="../services/servicesDetail.aspx?MasterID=fb4e1604-6b58-e211-91a2-00155d002d63">&nbsp;RP-2013010700002&nbsp;</A> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: left; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=grdResult_oldmodulenum_0 class="noemptyInput" disabled name=grdResult$ctl02$oldmodulenum value=0LTCW20237965-000050 type=text> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: left; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=grdResult_receiptstatus_0 class="noemptyInput" disabled name=grdResult$ctl02$receiptstatus value=未收货 type=text> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: right; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=grdResult_setoutnum_0 class="noemptyInput" disabled name=grdResult$ctl02$setoutnum value=1 type=text> </td>
    <td class="hidden"><INPUT id=grdResult_reSysID_0 name=grdResult$ctl02$reSysID value=fb4e1604-6b58-e211-91a2-00155d002d63 type=text></td>
    <td class="hidden"><INPUT id=grdResult_reoldmateriaID_0 name=grdResult$ctl02$reoldmateriaID value=9b3bebf6-0b45-e211-ba39-00155d002f0d type=text></td>
    <td class="hidden"><INPUT id=grdResult_repairtype_0 name=grdResult$ctl02$repairtype type=text></td></tr>
    <tr class="GridNormal" onmouseover="this.className='GridHover';" onmouseout="this.className='GridNormal';">
    <td align=center><INPUT style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; WIDTH: 100%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=Checkbox1 name=grdResult$ctl02$chkl value=70c3e59f-f786-e211-a6dd-00155d002d65 type=checkbox> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: left; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=Text1 class="noemptyInput" disabled name=grdResult$ctl02$oldmaterialid value=键盘操作单元 height=25 type=text> </td>
    <td style="WHITE-SPACE: nowrap" align=center><A href="../services/servicesDetail.aspx?MasterID=fb4e1604-6b58-e211-91a2-00155d002d63">&nbsp;RP-2013010700001&nbsp;</A> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: left; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=Text2 class="noemptyInput" disabled name=grdResult$ctl02$oldmodulenum value=0LTCW20237965-000051 type=text onclick="return Text2_onclick()"> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: left; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=Text3 class="noemptyInput" disabled name=grdResult$ctl02$receiptstatus value=未收货 type=text> </td>
    <td style="WHITE-SPACE: nowrap" align=center><INPUT style="BORDER-BOTTOM: 0px; TEXT-ALIGN: right; BORDER-LEFT: 0px; WIDTH: 98%; BORDER-TOP: 0px; BORDER-RIGHT: 0px" id=Text4 class="noemptyInput" disabled name=grdResult$ctl02$setoutnum value=1 type=text> </td>
    <td class="hidden"><INPUT id=Text5 name=grdResult$ctl02$reSysID value=fb4e1604-6b58-e211-91a2-00155d002d63 type=text></td>
    <td class="hidden"><INPUT id=Text6 name=grdResult$ctl02$reoldmateriaID value=9b3bebf6-0b45-e211-ba39-00155d002f0d type=text></td>
    <td class="hidden"><INPUT id=Text7 name=grdResult$ctl02$repairtype type=text></td></tr>
    </TABLE>


    如图:

     

    JS判断一个数组中是否有重复值的三种方法: http://www.360doc.com/content/13/0321/19/6692427_273074433.shtml

     

  • 相关阅读:
    061.Python前端Django组件用户认证组件
    060.Python组件-中间件
    059.Python前端Django组件cooki和session
    058.Python前端Django与Ajax
    057.Python前端Django模型ORM多表查询
    数字签名与数字证书的原理
    加密算法的分类与区别
    Linux操作php.ini文件
    Linux添加普通权限账号并授予root权限
    Linux 切换 shell
  • 原文地址:https://www.cnblogs.com/allenhua/p/3025378.html
Copyright © 2020-2023  润新知