how to show readonly fields in edit form in jqgrid or other way to show whole text from readonly column
Is the setting
editable: true, editoptions: { readonly: "readonly" }
probably what you need?
UPDATED: Free jqGrid supports more values for editable
property starting with version 4.8. The wiki article described that editable
can be function and it supports additionally three string values in case of using form editing: "hidden"
, "disabled"
and "readonly"
.
To show readonly fields you might try using the "disabled:disabled"
inside editoptions
.
Yet another option is to use a custom element type that returns a span as below:
colModel: [
...
{name:'price', ..., editable:true, edittype:'custom', editoptions:{custom_element: myelem, custom_value:myvalue} },
...
]
..
function myelem (value, options) {
var el = document.createElement("span");
$(el).val(value); // be sure to escape special characters as necessary.
return el;
}
function myvalue(elem, operation, value) {
// just reutrun null or empty string.
return "";
}
I prefer this over using "readonly:readonly
", because the readonly
option wraps an input control around the cell value, the input control still receives focus, which I think is misleading to the user. Using "disabled:disabled"
keeps the input element from receiving better, which is slightly better, in terms of usability.
Using a span is much better. Interestingly, jqGrid sends even "unsuccessful" form controls to the server.
Hope this helps. -- jqr