我有以下代码从网格中获取值。网格不是打印值,而是以下面的对象格式打印数据。如何打印价值?
[object Object], [object Object], [object Object], [object Object], [object Object]
代码:
$(document).ready(function () {
$("#check").click(function(){
var rows = $('#jqxgrid').jqxGrid('getrows');
alert(rows);
});
});
答案 0 :(得分:48)
一种简单的方法是使用
JSON.stringify(rows)
即
alert(JSON.stringify(rows))
否则,您需要手动遍历对象的属性并相应地打印它们。提供有关输入和所需输出的更多详细信息。
交互式Node.js中的一个例子:
> x = { 1: 2, 3:4 };
{ '1': 2, '3': 4 }
> x.toString();
'[object Object]'
> JSON.stringify(x)
'{"1":2,"3":4}'
答案 1 :(得分:0)
Grid的getrows返回一个行数组。获取第一行:var row = rows [0]。要获得第二行使用:var row2 = rows [1],依此类推。
要从第一行获取'fname'单元格值,您可以执行以下操作:
var rows = $("#grid").jqxGrid('getrows');
var firstRow = rows[0];
var fnameValue = firstRow.fname;
答案 2 :(得分:0)
从stackoverflow获得帮助,包括以下jquery函数:
The result will be equivalent to the PHP function print_r.
echo '<pre>' . print_r($data) . '</pre>';
USAGE:
var data = [{'id':1,'name':'hello'},'world'];
$('#element').print_r(data);
//==========================================
(function($) {
$.fn.print_r = $.fn.print = function(variable){
return this.each(function(){
if(typeof variable == 'object'){
var string = $.print_r.objectToString(variable,0);
$(this).html(string);
} else {
$(this).html('<pre>'+variable.toString()+'</pre>');
}
});
}
$.print_r = {
objectToString : function (variable,i){
var string = '';
if(typeof variable == 'object' && i < 3){ // 3 is to prevent endless recursion, set higher for more depth
string += 'Object ( <ul style="list-style:none;">';
var key;
for(key in variable) {
if (variable.hasOwnProperty(key)) {
string += '<li>['+key+'] => ';
string += $.print_r.objectToString(variable[key],i+1);
string += '</li>';
}
}
string += '</ul> )';
} else {
string = variable.toString();
}
return string;
}
}
})(jQuery)