Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Передача объекта как параметра функции (https://javascript.ru/forum/jquery/14209-peredacha-obekta-kak-parametra-funkcii.html)

Fenec 05.01.2011 17:51

Передача объекта как параметра функции
 
Есть функция:

function getPrices(prices) {
...
table_str += '<a onclick="show('+prices+')">';
}

prices - объект, смотрю ifirebug в show передается: [object Object],[object Object] т.е. строка.
почему?

Aetae 05.01.2011 18:03

Потому что '<a onclick="show('+prices+')">' - строка.

Fenec 05.01.2011 18:17

Точно. А что можно сделать, если нужно передать вот так объект?

Aetae 05.01.2011 18:22

Вот так делать не нужно. Подозреваю что у вас вся концепция черезтунельная. Обработчики назначаются отдельно, и данные они получают другим способом.

Нет, конечно можно сделать как-то так, но это костыль:
Object.prototype.toString=function(){
	var p,s="{";
	for(p in this)if(this.hasOwnProperty(p)) {s+="'"+p+"':'"+this[p]+"',"}
	return s.slice(0,-1)+"}"
}
prices={cheburashka:400,ia:100,puh:300}
alert('<a onclick="show('+prices+')">')


Часовой пояс GMT +3, время: 10:52.