Completed
Last Updated: 12 Oct 2015 15:10 by ADMIN
Approved
Last Updated: 17 Feb 2016 15:05 by ADMIN
Completed
Last Updated: 15 Aug 2018 05:56 by ADMIN
The task's get_customFieldClientName() and set_customFieldClientName(newValue) methods always work with the last custom field in the CustomFields collection.

There are two workarounds until an official solution is available:
- instead of the function getter, use task._data.customFieldClientName . The setter cannot be worked around that easily. This can work for you if you only show data or do not need to edit custom fields
- OR, add the following function override at the end of the </form>  - a sample is attached below
        <script>
            Telerik.Web.UI.RadGantt.prototype.initializeCustomFields = function () {

                var _createCustomFieldGetterAndSetter = function (fieldName) {
                    var taskType = Telerik.Web.UI.GanttTask;
                    taskType.prototype["get_" + fieldName] = function () {
                        return this._data[fieldName];
                    };

                    taskType.prototype["set_" + fieldName] = function (value) {
                        var updateInfo = {};
                        updateInfo[fieldName] = value;
                        this._data[fieldName] = value;
                        this._update(updateInfo);
                    };
                }

                var customFields = this.get_customTaskFields();
                for (var i = 0, length = customFields.length; i < length; i++) {
                    _createCustomFieldGetterAndSetter(customFields[i].clientPropertyName);
                }
            }
        </script>
Completed
Last Updated: 12 Nov 2018 12:38 by ADMIN
Workaround - placing the following script after the ScriptManager: 
<script type="text/javascript">
    Telerik.Web.UI.RadGantt.prototype.postback = function (args) {
        var postbackFunction = this.get_postBackReference().replace("arguments",
                Sys.Serialization.JavaScriptSerializer.serialize(args).replace(/\\/g, "\\\\").replace(/'/g, "\\'"));

        eval(postbackFunction);
    }
</script>
Approved
Last Updated: 06 Dec 2016 08:56 by ADMIN
Completed
Last Updated: 03 Feb 2017 13:57 by ADMIN