ServiceNow getXMLAnswerメソッドの使い方のサンプル
概要
var 変数名 = new GlideAjax(サーバスクリプト名)
変数名
サンプルコード,addParam('sysparam_name’,メソッド名)
変数名,addParam('sysparm_user_id’,ユーザーのsys_idを指定)
1.クライアントスクリプトコードの定義
function onChange(control, oldValue, newValue, isLoading) { if (isLoading || newValue == '') { return; } var grd = new GlideAjax('GetUserInfo'); //Ajaxを利用してサーバを呼び出す。引数にサーバスクリプトファイル名を渡す grd.addParam('sysparm_name', 'getUserNo'); //呼び出すメソッド名を指定 grd.addParam('sysparm_user_id', newValue); //選択されたユーザのsys_idを設定する grd.getXMLAnswer(function(answer) { //Ajaxを呼び出し if (answer.length > 0) { //メールアドレスを取得できたかチェック g_form.setValue('user_info', answer); // 結果をメールフィールドに設定する } }); }
2.スクリプトインクルードの定義
形式
var スクリプト名= Class.create();
スクリプト名.prototype = Object.extendsObject(AbstractAjaxProcessor, {
メソッド名:function(){処理コード}
var GetUserInfo = Class.create(); GetUserInfo.prototype = Object.extendsObject(AbstractAjaxProcessor, { getUserNo: function() { var userId = this.getParameter('sysparm_user_id'); var grUser = new GlideRecord('sys_user'); //SystemNowのユーザテーブル(sys_id)を参照する if (grUser.get(userId)) { //指定したユーザが存在するか確認 return grUser.name + ' [' + grUser.employee_number + ']'; //存在する場合はメールアドレスを返す } return ''; //存在しない場合は空文字を返す }, type: 'GetUserInfo' });