Начните с пустой формы на своей HTML-странице:
<form>
<div id="formElementsContainer">
</div>
</form>
Структурируйте строку, возвращаемую клиенту, как данные JSON.Примерно так может работать для одного элемента
{
"ui-model": "textbox",
"value": {"prop1": "value1", "prop2": "value2", /* etc */ }
}
- или что-то вроде этого для коллекции -
{
"uimodel": "checkbox",
"value": { "myCollection": [
{"prop1": "value1", "prop2": "value2", /* etc */ },
{"prop1": "value1", "prop2": "value2", /* etc */ },
{"prop1": "value1", "prop2": "value2", /* etc */ }
]}
}
Используйте jQuery / Javascript для анализа JSON в объектах javascript:
var data = $.parseJSON(/* your JSON data here */)
Скажите, что Prop1 - это имя элемента, а prop2 - это значение в текстовом поле.Используйте данные объекта для создания элементов формы и добавьте их в контейнер элементов формы:
var ui = data.uimodel; // textbox
var obj = data.value;
var textbox = '<input type="' + ui + '" id="' + obj.prop1 +'">' + obj.prop2 + '</input>';
$('#formElementsContainer').append(textbox);
Это очень простой пример, и, конечно, дважды проверьте код, но он поможет вам начать работу.затем, когда вы отправляете форму обратно на сервер, значения элемента ввода будут отправлены обратно для использования на стороне сервера C #.