Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在jqGrid单元格编辑中只允许数字?_Javascript_Jsp_Jqgrid - Fatal编程技术网

Javascript 如何在jqGrid单元格编辑中只允许数字?

Javascript 如何在jqGrid单元格编辑中只允许数字?,javascript,jsp,jqgrid,Javascript,Jsp,Jqgrid,当网格可编辑时,键入时仅接受数字如何操作 JSP网格加载代码: <s:url id="mobbillid" action="newmul_mob_gridact" /> <sjg:grid caption="EMPLOYEE MOBILEBILL DETAILS" gridModel="mobbill_gridModel" height="200" href="%{mobbill

当网格可编辑时,键入时仅接受数字如何操作

JSP网格加载代码:

<s:url id="mobbillid" action="newmul_mob_gridact" />   
    <sjg:grid caption="EMPLOYEE MOBILEBILL DETAILS"
              gridModel="mobbill_gridModel" 
              height="200"
              href="%{mobbillid}"
              id="gridtab"
              cellEdit="true"
              cellurl="%{mobbillid}"              
              rownumbers="true"
              viewrecords="true"
              pager="true"
              pagerPosition="center"
              navigator="true"
              navigatorSearch="true"
              navigatorSearchOptions="{multipleSearch:true}"
              navigatorDelete="false"
              navigatorEdit="false"
              loadonce="true"
              rowNum="10000"
              multiselect="true"
              reloadTopics="reloadSearchedClaims"
              footerrow="false"
              userDataOnFooter="true"
              onSelectRowTopics="rowselect"
            >
        <sjg:gridColumn name="newsin_mob_faname" index="newsin_mob_faname" title="FAcode" width="100" />
        <sjg:gridColumn name="newsin_mob_name" index="newsin_mob_name" title="FANAME" width="100" />
        <sjg:gridColumn name="newsin_mob_no" index="newsin_mob_no" title="MOBNO" width="100" />
        <sjg:gridColumn name="newsin_mob_billno" index="newsin_mob_billno" title="BILLNO" width="40" editoptions="true" editable="true"  />
        <sjg:gridColumn name="newsin_mob_billamt" index="newsin_mob_billamt" title="BILLAMT" width="90" editable="true" />
        <sjg:gridColumn name="newsin_mob_othchrg" index="newsin_mob_othchrg" title="OTHCHRG" width="95" editable="true" />
        <sjg:gridColumn name="newsin_mob_psts" index="newsin_mob_psts" title="refid" width="70" align="right"  hidden="true"/>
        <sjg:gridColumn name="newsin_mob_rmrk" index="newsin_mob_rmrk" title="REMARK" width="75" align="right"  editable="true"/>
        <sjg:gridColumn name="newsin_mob_opnbal" index="newsin_mob_opnbal" title="OPNBAL" width="75" align="right" hidden="true"/>
        </sjg:grid>  

您可以使用一些jquery来处理此问题,请检查此小提琴:

您可以将可编辑文本框设置为一个名为
.allownumericwithdecimal
的类,并使用以下代码

 $(".allownumericwithdecimal").on("keypress keyup blur",function (event) {
     $(this).val($(this).val().replace(/[^0-9\.]/g,''));
            if ((event.which != 46 || $(this).val().indexOf('.') != -1) && (event.which < 48 || event.which > 57)) {
                event.preventDefault();
            }
        });
$(.allownumericwithdecimal”).on(“按键向上模糊”,函数(事件){
$(this.val($(this.val().replace(/[^0-9\.]/g');
if((event.which!=46 | | |$(this.val().indexOf('.')!=1)和&(event.which<48 | | event.which>57)){
event.preventDefault();
}
});
如果您的网格文本框是动态添加的,您将需要执行以下操作

$(document).on('keypress keyup blur', '.allownumericwithdecimal', function () {
    $(this).val($(this).val().replace(/[^0-9\.]/g, ''));
    if ((event.which != 46 || $(this).val().indexOf('.') != -1) && (event.which < 48 || event.which > 57)) {
        event.preventDefault();
    }
});
$(document).on('keypress keyup blur','allownumericwithdecimal',函数(){
$(this.val($(this.val().replace(/[^0-9\.]/g');
if((event.which!=46 | | |$(this.val().indexOf('.')!=1)和&(event.which<48 | | event.which>57)){
event.preventDefault();
}
});
Jsp代码:

<s:url id="mobbillid" action="newmul_mob_gridact" />   
<sjg:grid caption="EMPLOYEE MOBILEBILL DETAILS"
          gridModel="mobbill_gridModel" 
          height="200"
          href="%{mobbillid}"
          id="gridtab"
          cellEdit="true"
          cellurl="%{mobbillid}"              
          rownumbers="true"
          viewrecords="true"
          pager="true"
          pagerPosition="center"
          navigator="true"
          navigatorSearch="true"
          navigatorSearchOptions="{multipleSearch:true}"
          navigatorDelete="false"
          navigatorEdit="false"
          loadonce="true"
          rowNum="10000"
          multiselect="true"
          reloadTopics="reloadSearchedClaims"
          footerrow="false"
          userDataOnFooter="true"
          onSelectRowTopics="rowselect"
        >
    <sjg:gridColumn name="newsin_mob_faname" index="newsin_mob_faname" title="FAcode" width="100" />
    <sjg:gridColumn name="newsin_mob_name" index="newsin_mob_name" title="FANAME" width="100" />
    <sjg:gridColumn name="newsin_mob_no" index="newsin_mob_no" title="MOBNO" width="100" />
    <sjg:gridColumn name="newsin_mob_billno" index="newsin_mob_billno" title="BILLNO" width="40" editoptions="true" editable="true" editrules="{number:true}"/>
    <sjg:gridColumn name="newsin_mob_billamt" index="newsin_mob_billamt" title="BILLAMT" width="90" editable="true" edittype="text" editrules="{number:true}"/>
    <sjg:gridColumn name="newsin_mob_othchrg" index="newsin_mob_othchrg" title="OTHCHRG" width="95" editable="true"  editrules="{number:true}"/>
    <sjg:gridColumn name="newsin_mob_psts" index="newsin_mob_psts" title="refid" width="70" align="right"  hidden="true"/>
    <sjg:gridColumn name="newsin_mob_rmrk" index="newsin_mob_rmrk" title="REMARK" width="75" align="right"  editable="true" />
    <sjg:gridColumn name="newsin_mob_opnbal" index="newsin_mob_opnbal" title="OPNBAL" width="75" align="right" hidden="true"/>
    </sjg:grid>  

使用editrules=“{number:true}”


当焦点离开它时,如果它的字母表显示错误消息,就会触发它

你能用这个和你的可编辑文本框设置一个JSFIDLE吗?你想看看它吗