Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 离子-在弹出窗口中使用单选按钮 控制器 弹出式模板 鸡蛋 西红柿_Javascript_Angularjs_Ionic Framework - Fatal编程技术网

Javascript 离子-在弹出窗口中使用单选按钮 控制器 弹出式模板 鸡蛋 西红柿

Javascript 离子-在弹出窗口中使用单选按钮 控制器 弹出式模板 鸡蛋 西红柿,javascript,angularjs,ionic-framework,Javascript,Angularjs,Ionic Framework,现在,$scope.favorite.food和单选按钮之间的数据绑定根本不起作用。奇怪的是,如果我用一个输入字段替换单选按钮,它会再次工作 如何使我的单选按钮按预期工作?只需一次输入,您所做的就是更改食物的值。对于单选按钮,需要多个选项,因此需要扩展现有对象。您可以尝试以下方法: JS HTML {{item.food} 如果您想在视图/控制器之间共享食物数据,您真的应该使用服务(如果您还没有使用)。如果您在ng-model中使用$parent。问题已解决 <script id="p

现在,
$scope.favorite.food
和单选按钮之间的数据绑定根本不起作用。奇怪的是,如果我用一个输入字段替换单选按钮,它会再次工作


如何使我的单选按钮按预期工作?

只需一次输入,您所做的就是更改食物的值。对于单选按钮,需要多个选项,因此需要扩展现有对象。您可以尝试以下方法:

JS

HTML


{{item.food}

如果您想在视图/控制器之间共享
食物
数据,您真的应该使用服务(如果您还没有使用)。

如果您在ng-model中使用$parent。问题已解决

<script id="popup-favorite.html" type="text/ng-template">
        <ion-list>
           <ion-radio ng-model="$parent.favorite.food" ng-value="'egg'" ng-change="test(formData)" >egg</ion-radio>
           <ion-radio ng-model="$parent.favorite.food" ng-value="'tomato'" ng-change="test(formData)">tomato</ion-radio>
        </ion-list>
</script>

鸡蛋
番茄

我会尝试在引号中添加一个字符串

  <ion-radio ng-model="favorite.food" ng-value="'egg'">Egg</ion-radio>
   <ion-radio ng-model="favorite.food" ng-value="'tomato'">Tomato</ion-radio>
鸡蛋
西红柿
摘自以下示例:

我相信如果没有报价的话,必应应该是$scope.egg和$scope.tomato

您可以尝试调整代码以使用更动态的方法,如angular docs上的示例所示,并让单选按钮动态生成,如:

 $scope.favourites = [
    { food: "egg", value: 1 },
    { food: "tomato", value: 2 },
    { food: "cheese", value: 3} ]
<script id="popup-favorite.html" type="text/ng-template">
     <ion-radio ng-repeat="item in favorites"
                ng-value="item.value"
                ng-model="favourites.food"
                ng-change="doSomething(item)">
                {{item.food}}
     </ion-radio>
</script>
<script id="popup-favorite.html" type="text/ng-template">
        <ion-list>
           <ion-radio ng-model="$parent.favorite.food" ng-value="'egg'" ng-change="test(formData)" >egg</ion-radio>
           <ion-radio ng-model="$parent.favorite.food" ng-value="'tomato'" ng-change="test(formData)">tomato</ion-radio>
        </ion-list>
</script>
  <ion-radio ng-model="favorite.food" ng-value="'egg'">Egg</ion-radio>
   <ion-radio ng-model="favorite.food" ng-value="'tomato'">Tomato</ion-radio>