Forum
12:56
23/08/2011
The value for droplists is not set correctly. The function tries to set the selected TEXT to the selected VALUE. This will work if the value and text are thesame in the droplist but else it will fail to set the droplist.
The problem is that the function itself gets the rowdata so I can't intervene anymore. The radiobuttons/checkboxes are catched but the droplists aren't.
The bold section below is the fix for the problem.(nested if could be done better but my jquery skills are not reaching here ).
GridToForm: function(rowid, formid) {
return this.each(function() {
var $t = this;
if (!$t.grid) { return; }
var rowdata = $($t).jqGrid("getRowData", rowid);
if (rowdata) {
for (var i in rowdata) {
if ($("[name=" + $.jgrid.jqID(i) + "]", formid).is("input:radio") || $("[name=" + $.jgrid.jqID(i) + "]", formid).is("input:checkbox")) {
$("[name=" + $.jgrid.jqID(i) + "]", formid).each(function() {
if ($(this).val() == rowdata[i]) {
$(this).attr("checked", "checked");
} else {
$(this).attr("checked", "");
}
});
} else {
// this is very slow on big table and form.
if ($("[name=" + $.jgrid.jqID(i) + "]", formid).is("select")) {
text = "option[text='" + rowdata[i] + "']";
$("[name=" + $.jgrid.jqID(i) + "]", formid).find(text).attr("selected", "selected");
} else {
$("[name=" + $.jgrid.jqID(i) + "]", formid).val(rowdata[i]);
}
}
}
}
});
}
Most Users Ever Online: 715
Currently Online:
49 Guest(s)
Currently Browsing this Page:
1 Guest(s)
Top Posters:
OlegK: 1255
markw65: 179
kobruleht: 144
phicarre: 132
YamilBracho: 124
Renso: 118
Member Stats:
Guest Posters: 447
Members: 11373
Moderators: 2
Admins: 1
Forum Stats:
Groups: 1
Forums: 8
Topics: 10592
Posts: 31289
Newest Members:
, razia, Prankie, psky, praveen neelam, greg.valainis@pa-tech.comModerators: tony: 7721, Rumen[Trirand]: 81
Administrators: admin: 66