Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.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 角度:在我提交表单之前,当API返回值时,表单上的复选框不会变为选中状态_Javascript_Html_Angularjs_Forms_Checkbox - Fatal编程技术网

Javascript 角度:在我提交表单之前,当API返回值时,表单上的复选框不会变为选中状态

Javascript 角度:在我提交表单之前,当API返回值时,表单上的复选框不会变为选中状态,javascript,html,angularjs,forms,checkbox,Javascript,Html,Angularjs,Forms,Checkbox,在过去的一个半小时里,我一直被困在一个看似简单的问题上,任何帮助都将不胜感激,因为它让我发疯 我在表单上有一个复选框,当从API返回的its模型等于1时,我希望该复选框显示为选中,而当值为0时,该复选框不显示为选中。我使用了一个非常简单的复选框 但是,当我加载表单并且API返回值1时,复选框没有被选中。但是,当我单击提交整个表单的按钮时,复选框将变为选中状态。如果我重新加载页面,复选框将返回为未选中状态。这里有我遗漏的东西吗 以下是HTML: 代码在这个环境中运行良好。我正在控制器中设置模型:

在过去的一个半小时里,我一直被困在一个看似简单的问题上,任何帮助都将不胜感激,因为它让我发疯

我在表单上有一个复选框,当从API返回的its模型等于1时,我希望该复选框显示为选中,而当值为0时,该复选框不显示为选中。我使用了一个非常简单的复选框

但是,当我加载表单并且API返回值1时,复选框没有被选中。但是,当我单击提交整个表单的按钮时,复选框将变为选中状态。如果我重新加载页面,复选框将返回为未选中状态。这里有我遗漏的东西吗

以下是HTML:


代码在这个环境中运行良好。我正在控制器中设置模型:

  $scope.formData = {
    paymentMode : 1
  }

实际上,这听起来像是摘要循环的问题,好像你在其他地方分配模型,可能是一个承诺,也可能不是在角度范围内?。如果这是真的,angular不会刷新视图,因为它不知道更改,但它会在提交表单时发生的摘要循环中刷新。

能否显示从API设置值的代码?是的,我很确定这正是发生的情况。但我不知道如何解决这个问题。如果我可以在这个复选框中使用true/false,所有这些问题都会消失,但需要使用ints。当控制器加载时,我有一个空的formData对象。然后它调用API并在承诺中填充formData。但是,提交表单使用不同的API端点。您可以共享代码吗?不是很漂亮,但是您可以手动调用apply方法来进行摘要。有两种方法:1。只需在承诺结束时调用$scope.apply即可。2.将所有承诺放在apply$scope.applyfunction{…}中。
  $scope.formData = {
    paymentMode : 1
  }