Javascript AngularJS的ng模型不绑定下拉菜单(ng选项)中的选定值,也无法重新加载页面

Javascript AngularJS的ng模型不绑定下拉菜单(ng选项)中的选定值,也无法重新加载页面,javascript,angularjs,angular-ngmodel,angularjs-ng-options,Javascript,Angularjs,Angular Ngmodel,Angularjs Ng Options,基本上,我有一个运行在本地主机上的web服务器,我想在我的AngularJS web应用程序和我的服务器之间交换数据。我成功地传输了数据,但正确显示它是一个问题 我已经做了一个简化的plunkr版本 显然,您没有服务器端代码,但并不需要它。 正如在plunkr中所说,我有不止一个问题: 我无法使用$route.reload重新加载页面,我还尝试使用$window.location.reloadtrue、$window.location.href=$window.location.href。。。到

基本上,我有一个运行在本地主机上的web服务器,我想在我的AngularJS web应用程序和我的服务器之间交换数据。我成功地传输了数据,但正确显示它是一个问题

我已经做了一个简化的plunkr版本

显然,您没有服务器端代码,但并不需要它。 正如在plunkr中所说,我有不止一个问题:

我无法使用$route.reload重新加载页面,我还尝试使用$window.location.reloadtrue、$window.location.href=$window.location.href。。。到目前为止什么都没起作用 此外,ng选项中的ng模型不绑定数据。若我在调用sendData时进入debugger,则会定义tempData,但selectedListItem不会,即使我从下拉菜单中选择了一个值 任何建议都是非常受欢迎的


谢谢您的时间。

请参阅AngularJS关于布线和视图的教程:


关于你提到的3个问题:

1.页面重新加载不起作用 如果未使用ngRoute且未配置任何路由,则无法使用$route.reload。 顺便说一句,添加ngRoute作为依赖项,而不包括相关的JS脚本将引发错误

2.ngModel不将数据绑定到selectedListItem 一旦您修复了其他错误,这似乎可以按预期工作,请参见下面的演示

3.无法将下拉菜单设置为默认值 一旦您修复了其他错误,这似乎可以按预期工作,请参见下面的演示


另请参见此项。

您不使用路由,这就是$route.reload不起作用的原因。看起来您正在尝试将listItem对象设置为选择列表值-这应该是一个int、string等值。listItem上是否有可以使用的Id?e、 g.ng options=listItem.Id为listItem.text1+''+listItem.text2+''+listItem.text3+''+listItem.text4,用于tempData.listItems$scope.selectedListItem=data.listItems[0].Id;dfsq:你能解释一下如何使用路线,或者给我发一个教程的链接吗@汤姆:是的,我可以用一个值作为ID,我会试着回去报告。感谢你们两位只是好奇:为什么要重新加载视图?@Tom我想清空页面上的所有数据。。。我知道可以使用form.setPristine的表单并将ng模型设置为默认值来完成,但我还没有时间去处理这个问题。我确实试过了,但下拉菜单保留最后选择的值时出现问题…谢谢你的演示。。。看起来其中一个问题是我买的模板中的.css。在删除它和相应的.js之后,一切都像一个符咒$window.location.reload适用于Firefox,但不适用于Chrome,可能是由于另一个.css。无论如何,由于数据绑定现在可以工作,我不需要重新加载页面,只需将表单设置为原始状态,将模型设置为默认值谢谢您提供的信息。。。既然所有的问题都解决了,我不认为我会使用路线,但是如果我需要的话,最好知道在哪里可以找到教程;