After some digging I have found an answer. use sforce.connection.describeSObject to get all the fields and then use SOQL to query for the values.
var result = sforce.connection.describeSObject("Lead"); var fields = result.getArray("fields");
for (var i=0; i<fields.length; i++) { var field = fields[i]; var result = sforce.connection.query("Select "+field.name+" from Lead where ID = '{!Lead.Id}'", {onSuccess : success, onFailure : failure}); } function success(result) { var values = result.getArray("records"); var foo = values[0]; var index = 0; var Name = ""; var Value = "";
for (property in foo) { if (index === 2) { Name = property; Value = foo[property]; alert(Name + " : " + Value); } index++; } }
function failure(result) { alert("ERROR : " +result); }
use sforce.connection.describeSObject to get all the fields and then use SOQL to query for the values.
var result = sforce.connection.describeSObject("Lead");
var fields = result.getArray("fields");
for (var i=0; i<fields.length; i++)
{
var field = fields[i];
var result = sforce.connection.query("Select "+field.name+" from Lead where ID = '{!Lead.Id}'", {onSuccess : success, onFailure : failure});
}
function success(result)
{
var values = result.getArray("records");
var foo = values[0];
var index = 0;
var Name = "";
var Value = "";
for (property in foo)
{ if (index === 2)
{
Name = property;
Value = foo[property];
alert(Name + " : " + Value);
}
index++;
}
}
function failure(result)
{
alert("ERROR : " +result);
}