2017-04-25 106 views
1

我在我的PDF中有一個表單域,需要5個大寫字母作爲輸入,或者根本沒有。其他一切都應該導致錯誤。我得到了第一部分的工作,但我在檢查一個空的領域時犯了一些錯誤。下面是我的javascript:Acrobat表單字段RegEx驗證

event.rc = true; 
 
var myRegExp = /^[A-Z]{5}$/; 
 
var myTextInput = event.value; 
 
if (!myRegExp.test(myTextInput) || myTextInput != "") 
 
{ 
 
    app.alert("Your order number prefix must be formatted as five characters, all caps."); 
 
    event.rc = false; 
 
}

+0

我認爲你只需要刪除「||」。 myTextInput!=「」'。無論如何,一個空字符串不會匹配你的正則表達式。 –

+0

空字符串不應該觸發錯誤,因此是OR語句。沒有它,只要您重置PDF,錯誤就會出現。 –

+1

所以,現在任何非空字符串都會觸發警報,對吧?將正則表達式更改爲'var myRegExp =/^([A-Z] {5})?$ /'並移除「||」。 myTextInput!=「」' –

回答

0

更改正則表達式

var myRegExp = /^([A-Z]{5})?$/; 

允許空字符串匹配和刪除|| myTextInput != ""條件變得無關緊要。

A (...)?組是一個可選項,因爲?匹配1或0個量化子模式。