1
<td><input type="text" MAXLENGTH="5" <cfif isdefined ("saverecord1") and isdefined("form.startnum") and form.startnum neq ''>value="#form.startnum#" <cfelse>value=""</cfif> onkeyup="toupper(this)"  name="startnum" id="startnum"></td>

<td><input  MAXLENGTH="5"type="text" <cfif isdefined ("saverecord1") and isdefined("form.endnum") and form.endnum neq ''>value="#form.endnum#" <cfelse>value=""</cfif>   onkeyup="toupper(this)" name="endnum" id="endnum"></td> 

<cfset x = #REFind('[^a-z]', '#form.startnum#')# >                      

<cfset x = "#form.startnum#"> 
<cfif Len(Trim(x)) GT 0> 
    <cfset x = RemoveChars(x,1,1)> 
</cfif> 

<cfset y = "#form.ENDNUM#"> 

<cfif Len(Trim(y)) GT 0> 
    <cfset y = RemoveChars(y,1,1)> 
</cfif>     
<cfif y gt x>               
    <cfset total = y - x>   
<cfelse>
    <script>
    alert('Starting key number has to be greater than the ending key number! Please enter again');
    </script>   
</cfif>

我有 2 个文本框,用户可以在其中输入字母数字键号(如 M1000)和数字键号(如 1000)。我能够在生成自动递增键号的同时处理字母数字键号。

但是对于像 1000 这样的数字键条目,上面的操作失败了,因为我正在删除不存在的字符并且该条目不被接受。如果 refind() 是我可以用来查找字符串条目中是否有任何字符的函数,请提供建议。谢谢

4

1 回答 1

1

ReFind 是一个合适的函数,但您在使用之前覆盖了变量 x。这里你给 x 赋值。

<cfset x = #REFind('[^a-z]', '#form.startnum#')# > 

然后为 x 分配另一个值

<cfset x = "#form.startnum#">

然后你使用变量:

<cfif Len(Trim(x)) GT 0>

那个cfif是一样的

<cfif Len(Trim(form.startnum)) GT 0>

但你可能想要这个:

<cfif REFind('[^a-z]', '#form.startnum#') GT 0>
于 2013-05-31T15:33:46.063 回答