我有一個包含多個數據表的PDF,每個數據表都有多行。它是一個動態XFA數據PDF。驗證工作相當好,只要它在一個字段上,但現在我有一個更復雜的驗證。如果填充一個字段,則必須填充另一個字段,反之亦然。我向Foo字段添加了驗證JavaScript,並且類似於Bar字段。問題是,當我使用無效值從字段中跳出時,驗證消息會多次彈出相同的字段。我已經嘗試將xfa.event.rc設置爲true/false(取決於字段是否有效)。這在PDF上的其他字段中已成功使用,但似乎沒有效果,並且我在xfa.event.rc中找不到任何文檔,因此可能會被棄用。我認爲它曾經是返回碼。現在我正在使用EC4,但這個PDF最初是爲ES3編寫的。這裏是「Foo」驗證事件的JavaScript。選擇在同一個框中顯示所有消息不能解決問題。它多次顯示相同的消息。我知道這一點,因爲我在消息中添加了一個行號變量。我該如何防止使用JavaScript的Adobe Livecycle中的重複驗證郵件
MyXmlRoot.FirstItemsList.ItemDataRow.Foo::validate - JavaScript, client)
this.validationMessage = "";
if (!this.isNull && this.rawValue != ""){
var bar= xfa.resolveNode("MyXmlRoot.FirstItemsList.ItemDataRow.Bar");
if (bar.isNull || bar.rawValue == ""){
this.validationMessage = "A bar is required if a foo has been entered.";
}
}
謝謝!我會補充說我找到了[documentation](http://help.adobe.com/livedocs/acrobat_sdk/9/Acrobat9_HTMLHelp/wwhelp/wwhimpl/common/html/wwhelp.htm?context=Acrobat9_HTMLHelp&file=JS_API_AcroJS.88.582.html) validate方法甚至不會偵聽event.rc,所以它沒有任何作用。如果您嘗試直接在事件腳本窗口內直接從代碼返回true或false,那麼您將得到語法錯誤,但您可以調用返回true或false的腳本。語法錯誤是我爲什麼試圖首先設置event.rc的原因。 – rhopper