gpt4 book ai didi

javascript - Angular array.push() 返回空对象

转载 作者:行者123 更新时间:2023-12-03 11:14:31 34 4
gpt4 key购买 nike

您好,我正在开展一个教程项目,第一部分我正在尝试制作一个表单,该表单将接受图书 ISBN 编号,然后在互联网上查询其价格。

作为初学者,我制作了一系列书籍作为示例数据、一个用于显示它们的表格以及一个用于接受 ISBN 的表单。

在这个阶段,我只想将 ISBN 添加到现有数组中,但这不起作用。当我提交表单时,数据不会添加到表中,但会添加一个空表行。所以有些事情正在发生,但不知何故不正确

我的应用程序文件

(function() {
var app = angular.module('booksApp', []);

app.controller('BooksController', function() {
this.queryResults = results;

});

app.controller('QueryController', function() {
this.queryBook = function(){
this.val = this.isbn;
results.push([{ISBN: }]);
this.isbn = '';
};
});


var results = [
{
name: 'book 1',
ISBN: 1234,
price: 13.4
},
{
name: 'book 2',
ISBN: 1234234,
price: 32.8
}
];


})();

我的 html 文件

<body ng-controller="BooksController as books">
<form ng-controller="QueryController as qry" ng-submit="qry.queryBook()">
Please enter ISBN number to be queried:
<input type="text" ng-model="qry.isbn" />
<input type="submit" value="query" /> <br />
The queried value is {{qry.val}}
</form>

<table class="table">
<thead>
<tr>
<td>ISBN</td>
<td>Book Name</td>
<td>Shop</td>
<td>Stock</td>
<td>Price</td>
</tr>
</thead>
<tbody>
<tr ng-repeat="result in books.queryResults">
<td>{{result.ISBN}}</td>
<td>{{result.name}}</td>
<td>{{result.shop}}</td>
<td>{{result.stock}}</td>
<td>{{result.price | currency}}</td>
</tr>
</tbody>
</table>
<script src="js/angular.js" type="text/javascript"></script>
<script src="booksApp.js" type="text/javascript"></script>
</body>

最佳答案

您需要执行以下操作,而不是 results.push([{ISBN: }]);: results.push({ISBN: }); 因为您需要推送新对象,results.push([{ISBN: }]); 推送包含一个元素的新数组。

关于javascript - Angular array.push() 返回空对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27402095/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com