Wijmo POPUPコントロール:動的メッセージ
Wijmoとは
Wijmoとは、グレープシティが提供しているJavaScriptライブラリーです。
グラフ、コンボボックス、Popupウィンドウ等、開発に効率的なコントロール群をもっています。
今回は、Popupウィンドウでメッセージ内容を動的にする方法を記載します。
Popupウィンドウコントロールは、こちらにサンプルがありますので、どういうものかは確認してください。
※ スクリプトは「Angular JS」を用いています。
Popupウィンドウ内に変数を用いて動的に
AngularJSはリアルタイムでの双方向データバインディングを行うことができます。
その方法は、HTML内に「{{hensu}}」と記載してあげ
angular
.module('App', ["wj"])
.controller('AppController', ["$scope", function($scope, $http) {
$scope.hensu= "変数";
}]);
という形でとしてあげれば動的に書き換えることができます。
でも、これでは単純な文字列しかできません。
POPUPなどれでは、動的HTMLなどやってみたいものです。
動的HTML
JavaScriptなどでは「innerHTML」を使用してあげるのが、簡単な方法です。
今回はAngular JSを用いていますので、その方法は「ng-bind-html属性」を使用すれば実現できます。
ng-bind-html属性を使用するには、ngSanizeモジュールを使用します。
wijimoでngSanizeモジュールの使い方
app.controller('AppController', ["$scope", function ($scope, $http) {
// POP表示
$scope.showDtl = function (val) {
// 引数設定
$scope.dtlItem = val;
// POPを表示
$scope.popDtl.show(true);
}
}]);
HTML部分のソース
<wj-popup control="popDtl" fade-in="true" class="modal-content" hiding="hiding(s,e)">
<div class="modal-header">
<button type="button" class="close wj-hide" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">回答</h4>
</div>
<hr>
<div class="modal-body">
<div class="dl-horizontal">
<div ng-bind-html="dtlItem"></div>
</div>
</div>
<hr>
<div class="modal-footer">
<button type="button" class="btn btn-primary wj-hide" data-dismiss="modal" ng-click="cancelUpdate()">OK</button>
</div>
</wj-popup>
引数の val に HTMLソースを設定すれば動的にメッセージを変更することができます。







