(function ($) { $.fn.loadJSON = function (obj, options) { function setElementValue(element, value, name) { var type = element.type || element.tagName; if (type == null) return; type = type.toLowerCase(); switch (type) { case 'radio': if (value.toString().toLowerCase() == element.value.toLowerCase()) $(element).attr("checked", "checked"); break; case 'checkbox': if (value) $(element).attr("checked", "checked"); break; case 'select-multiple': var values = value.constructor == Array ? value : [value]; for (var i = 0; i < element.options.length; i++) { for (var j = 0; j < values.length; j++) { element.options[i].selected |= element.options[i].value == values[j]; } } break; case 'select': case 'select-one': case 'text': case 'hidden': $(element).attr("value", value); break;