我想寫一個功能,如果我們通過作用域和模板,它應該顯示在給定範圍內的所有工作綁定的jQuery UI對話框中給定的模板。jQuery UI對話與angularjs
下面是代碼:
HTML
<div id="mainDiv" ng-controller="myCtrl">
<input type="button" value="show dialog" ng-click="showTemplateDialog()" />
</div>
<script type="text/ng-template" id="dialogTemplate">
<div>
This is template div.
<span>Message: </span>
<p>{{message}}</p>
</div>
</script>
JS
var app = angular.module('myApp', []).controller('myCtrl', function($scope, $compile) {
$scope.showTemplateDialog = function() {
alert("hi")
var newScope = $scope.$new();
newScope.message = "This is some message";
$scope.showDialog(newScope, "dialogTemplate")
};
$scope.showDialog = function(dialogScope, template) {
var div = $("<div style='' id='dialog' title='Test Dialog' ng-include=\"'" + template + "'\"></div>");
$compile(div)(dialogScope);
$("#mainDiv").append(div);
div.dialog();
}
})
問題是,當我打電話div.dialog()
,它會拋出下面的錯誤在jquery-ui.min.js
Unhandled exception at line 9, column 26027 in http://localhost/TestApp/scripts/jquery-ui.min.js
0x800a138f - JavaScript runtime error: Unable to get property 'display' of undefined or null reference
請建議一些方法來解決此錯誤。或者建議一些其他方式在jQuery對話框中使用angularjs顯示和html /模板。
順便說一句,你在輸入元素的HTML語法錯誤。 –