日付の検証スニペットでは、ユーザーが入力した日付範囲に基づく日付の検証方法を示します。
この例では、ユーザーがカレンダーから日付を選択します。次に、指定された日付を有効と見なす日付範囲を指定します。指定された日付と日付範囲がフォームによって比較され、指定された年、月および日が有効かどうかがレポートされます。
「検証」ボタンにスクリプトを追加するにはform1.#subform[0].Button1::click - (JavaScript, client)
Status.clearItems(); //Clear the status listbox.
// Create a date() for parsing information.
var sDate = Date.rawValue;
var oDate = util.scand("yyyy-mm-dd", sDate);
if(oDate == null)
{
xfa.host.messageBox("Pleae enter a valid date.");
exit;
}
// Store date values.
var nYear = oDate.getFullYear();
var nMonth = oDate.getMonth() + 1; // 0 based
var nDay = oDate.getDate();
// Validation flags.
var bStartYear = false;
var bEndYear = false;
var bStartMonth = false;
var bEndMonth = false;
var bStartDay = false;
var bEndDay = false;
// Validate the year range.
if((StartYear.rawValue == null) || (StartYear.rawValue <= nYear))
bStartYear = true;
if((EndYear.rawValue == null) || (EndYear.rawValue >= nYear))
bEndYear = true;
if(bStartYear && bEndYear)
Status.addItem("valid year");
else
Status.addItem("invalid year");
// Validate the month range.
if((StartMonth.rawValue == null) || (StartMonth.rawValue <= nMonth))
bStartMonth = true;
if((EndMonth.rawValue == null) || (EndMonth.rawValue >= nMonth))
bEndMonth = true;
if(bStartMonth && bEndMonth)
Status.addItem("valid month");
else
Status.addItem("invalid month");
// Validate the day range.
if((StartDay.rawValue == null) || (StartDay.rawValue <= nDay))
bStartDay = true;
if((EndDay.rawValue == null) || (EndDay.rawValue >= nDay))
bEndDay = true;
if(bStartDay && bEndDay)
Status.addItem("valid day");
else
Status.addItem("invalid day");
同様の例については、LiveCycle デベロッパーセンターを参照してください。
|
|
|