記事タイトル:this.getField().value機能
|
書き込み欄へ
ヘルプ
お名前: pilgrim
e v e n t . r c = t r u e ;
f o r ( i = 0 ; i < e v e n t . c h a n g e . l e n g t h ; i + + ) {
v a r c = e v e n t . c h a n g e [ i ] ;
i f ( ( c < ' a ' | | c > ' z ' ) & & c ! = ' ' ){
e v e n t . r c = f a l s e ;
a p p . a l e r t ( '********' ) ;
b r e a k ;
}
}
[2003年5月24日 13時45分39秒]
お名前: pilgrim
大文字で、やってみます。もしうまく表示されたら、小文字で記述のこと。
EVENT.RC=TRUE;
FOR (I=0;I'Z' ) && C ! = ' ' ) {
EVENT.RC = FALSE;
APP.ALERT ('*****');
BREAK;
}
}
[2003年5月24日 13時39分59秒]
お名前: pilgrim
うまく表示されませんねえ。
event.rc=true;
for(i=0;i'Z') && c !=' ') {
event.rc=false;
app.alert('半角の英文字以外の文字を入力してはいけません。');
break;
}
}
[2003年5月24日 13時31分41秒]
お名前: pilgrim
スクリプトがうまく貼付できませんでした。以下が正しいものです。
event.rc=true;
for(i=0;i'z') && c !=' ') {
event.rc=false;
app.alert('半角の英文字以外の文字を入力してはいけません。');
break;
}
}
[2003年5月24日 13時25分53秒]
お名前: pilgrim
フォーマット→キーストロークスクリプトの記述→編集
に以下の記述をします。
半角、全角両方要る場合のスクリプトはご自分でお考え下さい。
たぶん、できると思います・・。
***********************************************
event.rc=true;
for(i=0;i'z') && c !=' ') {
event.rc=false;
app.alert('半角の英文字以外の文字を入力してはいけません。');
break;
}
}
*************************************************
キーストロークを読みとって、条件に適合したもの以外をもとに戻すものです。
[2003年5月24日 13時21分29秒]
お名前: NOKKUN
お世話になります。
Acrobat JavaScriptの初心者ですが、以下の内容がわかる方がいましたら教えてください。
Acrobat 4.05で、PDFフォームテキスト型のフィールドの入力文字を英字のみに規制する方法はありますでしょうか。
よろしくお願いします。
[2003年5月22日 11時58分28秒]
お名前: 大西
入力文字を全角英数にすれば、ゼロも表示するはずです。
単なる文字列だからです。
半角英数では、数字として認識されます。(バリアント型)
配列で、強制的にゼロを付加することはできます。
文字列長を数えて、前にゼロを付加してやれば
できると思います。
私のホームページに近いサンプルが有ったと思います。
[2003年2月24日 0時36分43秒]
お名前: マウスみみ
大西様、お返事ありがとうございます。
入力文字を英字のみに規制するというアドバイスでしょうか?
実際の運用でどうしても数字が入りますが・・・
あと、以下のスクリプトで実行してみましたがやっぱりゼロが抜けちゃうんです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
var a=this.getField("A");
var suji=a.value.toString();
var b=this.getField("B");
var suji_2=b.value.toString();
event.value=suji+suji_2;
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
あと、上のスクリプトで排列の概念があるということがよく理解できてません。
[2003年2月23日 20時6分34秒]
お名前: 大西
Ver4.0ではvalueAsStringが使えないので、確かに不便ですね。
うまい解決策は、見つかりません。
変数値はバリアント型ですから、いたしかたありません。
入力文字を全角英数にして、フィールドCに、つぎのスクリプトを
書いたら、いかがでしょうか。
var a=this.getField("A");
var suji=a.value.toString();
var b=this.getField("B");
var suji_2=b.value.toString();
event.value=suji+suji_2;
古い環境は、すでにありませんので検証していませんが
配列に関する理解が必要です。
[2003年2月21日 12時45分27秒]
お名前: マウスみみ
お世話になります。
Acrobat JavaScriptの初心者ですが、以下の問題で困ってます。
使用環境:Acrobat 4.05で、PDFフォームにてテキスト型のフィールドA,B,Cを作成しております。やりたいことは、AとBにデータが入力されるとCにA+Bの文字列を代入したいです。
つまり、Aに”012”と入力され、Bに”034”と入力された時、Cには”012034”を入れたいのです。
そのためフィールドcの書式スクリプトに
var a;・・・・・・・・・・・・・・(1)
var b;・・・・・・・・・・・・・・(2)
a = this.getField("A").value;・・・(3)
b = this.getField("B").value;・・・(4)
event.value = a+b;・・・・・・・・(5)
の5行を記述していますが、どうも(3)、(4)行目の段階で"012"の"0",
"034"の"0"が消えてしまいます。
Acrobat5.0だと”valueAsString”のようなプロパティが追加されているようですが、Acrobat4.05の環境ではどうすればテキストの前のゼロを保留できるのでしょうか?
[2003年2月20日 14時42分58秒]
このテーマについての発言をどうぞ。
※半角カナは使用しないようにしてください。文字化けします。
記事一覧に戻る