In this code I want to inject options. How can I pass that using the inject
function? Also pass in case some option is already selected.
dynamic_form.inject([{
p_name: ['One','two'],
quantity: '123',
remarks: 'testing remark'
}, {
p_name: ['One','two'],
quantity: '123',
remarks: 'testing remark'
}]);
This part of JSON is a bit confusing
$.each(formValue, function(index, value) {
if ($.isArray(value)) {
mainForm = clone.find("#" + index);
if (typeof mainForm.get(0).getSource === "function") {
$.each(value, $.proxy(fillData, mainForm.get(0).getSource()));
}
} else {
var formElements = changeArray[formIndex].find("[origname='" + index + "']");
if (formElements) {
if (formElements.get(0).tagName.toLowerCase() == "input") {
/* Fill in radio input */
if (formElements.attr("type") == "radio") {
formElements.filter("[value='" + value + "']").attr("checked", "checked");
} else if (formElements.attr("type") == "checkbox") { /* Fill in checkbox input */
formElements.attr("checked", "checked");
} else {
formElements.attr("value", value);
}
} else if (formElements.get(0).tagName.toLowerCase() == "textarea") {
/* Fill in textarea */
formElements.text(value);
} else if (formElements.get(0).tagName.toLowerCase() == "select") {
/* Fill in select */
$(formElements.get(0)).find("option").each(function() {
if ($(this).text() == value || $(this).attr("value") == value) {
$(this).attr("selected", "selected");
}
});
}
}
}
});