Javascript 如何将值从Jquery传递到angular Js?
我正在努力将一个值从Jquery传递到angular js。但我发现在angular js中没有定义。 我的代码:Javascript 如何将值从Jquery传递到angular Js?,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,我正在努力将一个值从Jquery传递到angular js。但我发现在angular js中没有定义。 我的代码: HTML : <button onclick="change('5')"></button> <input type="hidden" ng-model="data" id="one" /> <button ng-click="test(data)">Test</button> JQuery: function cha
HTML :
<button onclick="change('5')"></button>
<input type="hidden" ng-model="data" id="one" />
<button ng-click="test(data)">Test</button>
JQuery:
function change(data)
{
$("#one").val(data).change();
}
Angular Js :
$scope.test= function(data)
{
console.log(data)
}
HTML:
试验
JQuery:
功能更改(数据)
{
$(“#一”).val(数据).change();
}
角Js:
$scope.test=函数(数据)
{
console.log(数据)
}
但我没有定义。我怎样才能做到这一点呢?您可以肯定地做到*,但是您可能不应该这样做,因为jQuery和Angular的混合很快就会变得难以维护。这不是很好的设计 相反,使用角度指令和方法,在您的情况下,这很简单:
<button ng-click="change('5')"></button>
<input type="hidden" ng-model="data" id="one" />
<button ng-click="test(data)">Test</button>
*如果您真的需要:您需要让Angular知道您已经使用手动
$(“#one”).val(data.change())从摘要周期之外更改了模型;angular.element($(“#one”).scope().$apply()
使用ng单击
就像,
实际上jquery lite已经内置在angular中了。。。所以,如果您使用angular,请尝试以angular方式执行所有操作,我将使用angular.element($(“#one”)).scope().$apply()?在Jquery或Js中
$scope.change = function(x) {
$scope.data = x;
};