无法在函数中传递对象 Javascript
Not able to pass object in a function Javascript
以下是我的 plnkr,如果我没有向我的 open1
方法传递任何参数,但我需要在 $scope.open1
方法中传递一个对象,但它会抛出错误,它工作正常。
让我知道我做错了什么。
Plnkr - http://plnkr.co/edit/dzYfy1qtmBD3ng804nXR?p=preview
我遇到问题的代码 -
function imageHtml(data, type, full, meta) {
// Error here
var testData = {"key1": "val1", "key2": "val2"};
return '<img src="'+data+'" ng-click="open1('+testData+')" />';
}
我正在通过这种方法提醒数据 -
$scope.open1 = function(data) {
alert(data);
};
编辑 -
图片点击需要传递数据。
您需要 json 您的对象,以便它成为一个字符串供您连接。
return '<img src="'+data+'" ng-click=\'open1('+JSON.stringify(testData)+')\' />';
编辑:如果您的数据包含一些单引号,不确定这是否有效。你可能不得不逃避他们。
特别感谢@Mike'Pomax'Kamermans 我改变了我的数据结构,现在只使用数字,即 data.id ..像这样 -
function imageHtml(data, type, full, meta) {
var dataId = parseInt(data.listId);
return '<img src="'+data.ImageThumb+'" ng-click="open1('+dataId+')" />';
}
欢迎随时指正。
以下是我的 plnkr,如果我没有向我的 open1
方法传递任何参数,但我需要在 $scope.open1
方法中传递一个对象,但它会抛出错误,它工作正常。
让我知道我做错了什么。
Plnkr - http://plnkr.co/edit/dzYfy1qtmBD3ng804nXR?p=preview
我遇到问题的代码 -
function imageHtml(data, type, full, meta) {
// Error here
var testData = {"key1": "val1", "key2": "val2"};
return '<img src="'+data+'" ng-click="open1('+testData+')" />';
}
我正在通过这种方法提醒数据 -
$scope.open1 = function(data) {
alert(data);
};
编辑 -
图片点击需要传递数据。
您需要 json 您的对象,以便它成为一个字符串供您连接。
return '<img src="'+data+'" ng-click=\'open1('+JSON.stringify(testData)+')\' />';
编辑:如果您的数据包含一些单引号,不确定这是否有效。你可能不得不逃避他们。
特别感谢@Mike'Pomax'Kamermans 我改变了我的数据结构,现在只使用数字,即 data.id ..像这样 -
function imageHtml(data, type, full, meta) {
var dataId = parseInt(data.listId);
return '<img src="'+data.ImageThumb+'" ng-click="open1('+dataId+')" />';
}
欢迎随时指正。