Angularjs 完成alt选定对象数据
文件中说: 选定对象数据->将传递给选定对象的第二个参数。我试图使用它,但回调函数没有接收到它。 我做错了什么Angularjs 完成alt选定对象数据,angularjs,Angularjs,文件中说: 选定对象数据->将传递给选定对象的第二个参数。我试图使用它,但回调函数没有接收到它。 我做错了什么 <div data-angucomplete-alt="" id="agent" data-placeholder="Type to search" data-pause="400" data-selected-object="callbackFunction" data-selected-object-data="row" data-remo
<div data-angucomplete-alt=""
id="agent"
data-placeholder="Type to search"
data-pause="400"
data-selected-object="callbackFunction"
data-selected-object-data="row"
data-remote-url="getClients?searchString="
data-remote-url-data-field="Clients"
data-title-field="CompanyName"
data-input-class="form-control"
data-match-class="highlight"
data-minlength="2"
data-initial-value="{{row.agentCompany}}"
data-remote-url-response-formatter="formatAutoCompleteJson">
</div>
$scope.callbackFunction = function (selected) {
console.log(selected); //print only the selected object, no the data (second parameter)
//how to get the second parameter?
}
$scope.callbackFunction=函数(已选定){
console.log(selected);//仅打印所选对象,不打印数据(第二个参数)
//如何获取第二个参数?
}
我认为如果在回调函数中添加第二个参数,则可以访问“row”的值
我在控制器中创建了一个initialiser函数,它将回调函数返回到repeat的作用域中
<html>
<div ng-repeat="row in rows">
...
<div ng-init="row.callbackFunction = initialiseCallback(row)"></div>
<angucomplete-alt selected-object = "row.callbackFunction" />
...
</div>
</html>
Controller() {
$scope.initialiseCallback = function (row){
return function function (selected) {
console.log(selected);
console.log(row); // should print the row number
}
}
}
...
...
控制器(){
$scope.initialiseCallback=函数(行){
返回功能(已选择){
console.log(选中);
console.log(行);//应打印行号
}
}
}
我刚刚发现我使用的是angucomplete的旧版本,我将其更新为最新版本,参数开始工作。如果您使用的是ng repeat
比如说
<ul>
<li ng-repeat="customer in customers track by $index">
<angucomplete-alt pause="500"
selected-object="selectedCustomer"
selected-object-data="$index"
remote-url={{apiURL}}/customers/q?search="
remote-url-data-field="customers"
title-field="surname,name"
description-field="address"
minlength="3"/>
</li>
</ul>
<ul>
<li ng-repeat="customer in customers track by $index">
<angucomplete-alt pause="500"
selected-object="selectedCustomer"
selected-object-data="$index"
remote-url={{apiURL}}/customers/q?search="
remote-url-data-field="customers"
title-field="surname,name"
description-field="address"
minlength="3"/>
</li>
</ul>
$scope.selectedCustomer = function(customer, index) {
console.log(customer, index);
};