javascript - 如何将多个对象值作为单个对象发送到 JavaScript 函数

标签 javascript html angularjs

我正在开发 angularjs 应用程序。我正在迭代响应并显示在表中,当用户单击表行信息时,我将 json 值传递给 java 脚本,我将在其中进一步处理并显示信息。

<tr ng-repeat="info in responseData">
<td>
    {{info.id}}</td>
<td>
    <a href="javascript:void(0)"
       ng-click="showDetails(x.product1Data)">
    product1 Data</a>
</td>
<td style="width:15%;text-align: center;">
    <a href="javascript:void(0)"
       ng-click="showDetails(x.product2Data)">
    product2 Data </a>
</td>
<td style="width:15%;text-align: center;">
    <a href="javascript:void(0)"
       ng-click="showDetails(x.product3Data)">
    product3 Data</a>
</td>
<td>
    <a href="javascript:void(0)"
       ng-click="showDetails(..)">Show All Product Data </a>
</td>
</tr>

在上面的 html 代码中,当用户单击显示所有产品数据时,我想将 x.product1Data,x.product2Data,x.product3Data 值传递给 showDetails( ..)。当用户点击显示所有产品数据

时,有关如何在 showDetails 中传递所有 3 个对象的任何输入

js代码:

$scope.showDetails = function(productInfo){
//productInfo contains the product information
agularjs.forEach(productInfo,function(value,key){

}
}

最佳答案

您可以创建一个名为 showDetailSet() 的函数,该函数采用数组作为参数。它可以做类似的事情(你必须明显地确定它的范围):

function showDetailSet(products) {
    products.forEach(p => showDetails(p))
}

然后你可以这样调用它 ng-click="showDetailSet([x.product1Data, x.product2Data, x.product3Data])"

关于javascript - 如何将多个对象值作为单个对象发送到 JavaScript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49419723/

相关文章:

angularjs - 如何对具有绑定(bind) ('error' 、 function(){}) 的 Angular 指令进行单元测试?

angularjs - Ionic 框架模态点击的 Protractor 测试不起作用

javascript - AngularJs 路由没有错误但不工作

javascript - 在 HTML 表格中,如何使单元格的内容(而不是表格本身)居中?

javascript - 我是否误解了 Protractor 和 ControlFlow?

html - 垂直对齐容器内的对齐内联 block 元素

html - CSS Only 水平定位嵌套单元格的方法

javascript - Angular $q.defer() 返回 Object{then : function}

javascript - 向 JSON 添加新成员时出错

javascript - 返回值 `delete` 的真正含义是什么?