如何将 ng-model 属性绑定到动态生成的 jQuery 元素



下面的代码动态生成表单。 - 这是用 Angular js 1.4 编写的

    var $label = $('<label display="inline-block" width=25px>').text(jsonObj.ATTRIBUTES[key].ATTRIBUTE_NAME+' :  ');
    var $input = $('<input type="text">').attr({id: jsonObj.ATTRIBUTES[key].ATTRIBUTE_NAME+'Id', name: jsonObj.ATTRIBUTES[key].ATTRIBUTE_NAME, 'ng-model':'entity.'+jsonObj.ATTRIBUTES[key].ATTRIBUTE_NAME});
    $input.appendTo($label);
    $('#dynamicContent').append($label).append('<br/>');

接下来,这个"动态内容"ID在JSP中,如下所示

start form name="myForm" ng-submit="submitForm()"
div id='dynamicContent'
end form               

现在,如何确保表单提交,并且我将能够访问控制器中的"实体"?

PS:Angular 和 jQuery 的新手如果我只使用 Angular,请建议我该如何继续。

您需要

根据控制器的作用域$compile html 片段,然后将其附加到#dynamicContent。为此,您需要在控制器中注入$compile

示例代码:

var htmlContent = "<prepare-your-html-using-jquery>";
$("#dynamicContent").append(
  $compile(htmlContent)(scope);
);

参考:angularjs-jquery-how-to-get-dynamic-content-working-in-angularjs

最新更新