使用jquery更改ng-model绑定的html元素的值

时间:2013-05-13 18:32:43

标签: jquery angularjs angularjs-scope

我有一个包含选择框,文本,数字类型输入等的长格式。我希望当用户单击表单的提交按钮时,我们检查哪些字段当前为空,然后用虚拟值填充这些字段所以当我最终读取值时,我得到正确的范围变量值。

我正在使用jQuery检查字段是否为空,然后使用jQuery填充这些字段。

虽然填充了字段,但是范围变量值不会改变...如何更改?

这是一个小提琴:LINK

我想要的是点击“点击”,因为输入读取bhumiak,所以<h1>Hello {{yourName}}!</h1>

怎么做?

1 个答案:

答案 0 :(得分:0)

是的,正如lucuma已经提到过的,你不应该用jQuery做这个,而是用角度方式做。

Angular已经可以自己填充输出字符串而不需要额外的代码,如下所示:

<div ng-app="myApp" ng-controller="MyCtrl">
    <label>Name:</label>
    <input type="text" id="na" ng-model="yourName" placeholder="Enter a name here"/>
    <input type="button" value="click" ng-click="myClick()"/>
    <h1>Hello {{yourName}}!</h1>
</div>

看看这个小提琴,我做了一个例子:http://jsfiddle.net/marcorinck/zYyLf/

是的,您可以在需要时使用$ apply(特别是在指令中),但首先应该给$ apply一个函数参数,然后你应该对这个函数进行更改,angularJS可以选择。

有关$ apply的进一步说明,请查看此博文:http://jimhoskins.com/2012/12/17/angularjs-and-apply.html