带有AngualrJS $ compile的动态元素

时间:2016-04-06 16:01:23

标签: javascript angularjs angularjs-ng-click angularjs-compile

我正在创建动态按钮并使用$ compile来绑定ng-click事件。我在那里添加了两个参数。问题是如果参数是字符串并且中间有空格,则参数是分裂。

这是我的Javascript代码:

var name 'Demo 1';
var str= 'hello'
var btnhtml = '<button type="button" class="btn btn-primary btn-xs" ng-click=getShops("' + str + '","' + name + '")>View Detail</button>';
temp = $compile(btnhtml)($scope);

生成的HTML代码如下所示:

<button type="button" class="btn btn-primary btn-xs ng-scope" ng-click="getData("hello","Demo" 1")>View Detail</button>

我想要的输出是:

<button type="button" class="btn btn-primary btn-xs ng-scope" ng-click="getData("hello","Demo1")>View Detail</button>

我该如何解决这个问题。感谢。

1 个答案:

答案 0 :(得分:1)

你没有正确地逃避HTML

btnhtml = '<button type="button" class="btn btn-primary btn-xs" ng-click="getShops(\'' + str + '\',\'' + name + '\')">View Detail</button>';

我在转义之前删除了双引号符号"