nsfl10n

Lotus Notes/Domino のブログ。nsf:Notes Storage Facility。l10n:Localization。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告|
  3. トラックバック(-)|
  4. コメント(-)

AJAXを@DBLookupの代わりに使う(l10n)

Using AJAX as a replacement for @DBLookups

自社のアプリケーションにAJAXを組み込み始めた。その多くが、Webページを変更するためのHTMLを返すのに、innerHTMLプロパティを利用したエージェントを使います。でも@DBLookupみたいな情報を、もっと簡単に取得できるんじゃないかと思ってました。私がとったアプローチはとても高度ですが、必要となるどんな情報でも引き出すことができるように拡張できるものです。

基本的な構造は、くだんのフォームにある連絡者名と連絡電話番号のフィールドにアクセスします。ユーザー文書のデータからそこにある連絡電話番号のフィールドに自動でアクセスしたい。そのために、onBlurイベントに連絡者名のフィールドにアクセスするための getContactPhone(document.forms[0].contact.value,'contact_phone'); を設定した。すると、フィールドの外側にあるタブがあるときはいつでも、公開アドレス帳で連絡用電話番号がlookupされます。

私が作成したエージェント、GetOfficePhoneは、二行の表示と一緒にユーザの電話番号が返ってくる。

Print "Content-type: text/plain"
Print doc.OfficePhoneNumber(0)

このテクニックは、@DbColumnと@DBLookupファンクションのフル機能に拡張することができる。こんな感じ:

var xmlhttp=false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
@end @*/

if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
  xmlhttp = new XMLHttpRequest();
}

function getContactPhone(username, objID) {
  var obj = document.getElementById(objID);
  xmlhttp.open("GET", "/names.nsf/GetOfficePhone?OpenAgent&username=" + username);
  xmlhttp.onreadystatechange = function() {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
      obj.value = xmlhttp.responseText;
    }
  }
  xmlhttp.send(null);
}

スポンサーサイト
  1. 2005/11/23(水) 17:07:31|
  2. Designer|
  3. トラックバック:0|
  4. コメント:0
<<RSS拡張でMSのレイ・オジーCTOが狙うものは? | ホーム | Notes/Domino 7ラウンチページでダウンロードできるアイテム(l10n)>>

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://nsfl10n.blog9.fc2.com/tb.php/92-a814b899
05 | 2017/06 | 07
Sun Mon Tue Wed Thu Fri Sat
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -

Search

Featured Entries

Recent Entries

Recent Comments

Recent Trackbacks

Archives

Category

Links

Ads

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。