在角度函数中添加来自php的输入值

时间:2015-12-01 23:48:24

标签: php angularjs scope

我有一个输入,其值由php变量设置:     <input id="name" type="text" value="<?php if(isset($cib)){echo $cib;}?">。 我想使用这个值来设置angularjs函数的所有对象,如下面的代码所示:

`angular.forEach($scope.food, function(obj){
obj["price"] = 500;
obj["detail"] = variable_x;
obj["count"] = 1;
obj["id"] = 1;
});`

如果我将以下代码中显示的“variable_X”分配给tue值,则它不起作用。我试过了:

var variable_X=<?php if(isset($cib)){echo $cib;}  ?>

`var variable_X=document.getElementById("name");'

或使用ng-model。

我可以用另一种方式获取此变量的值吗?

2 个答案:

答案 0 :(得分:0)

var variable_X=<?php if(isset($cib)){echo $cib;}  ?>

应该可以正常工作,但如果$cib设置不正确会导致错误吗?

如果$cib未定义...

,该语句将成为浏览器
var variable_X= ;

失败了......

需要在失败时将变量设置为某个东西..

var variable_X=<?php isset($cib) ? $cib : 'false'  ?>;

然后在角度检查$ cib的FALSE值并做东西

答案 1 :(得分:0)

我在渲染html时使用ng-init来分配初始值:

<div ng-controller="..." ng-init="cib = '<?php if(isset($cib)){echo $cib;}?>'">

然后您可以在模板和控制器代码中使用cib

obj["detail"] = $scope.cib

(注意:从$ scope读取)