По моему мнению, использование UpdatePanel, обернутого вокруг Repeater / DataGrid / GridView, будет намного более простым в реализации подходом.
Это также можно сделать с помощью jQuery. Он будет состоять из отправки CateogryId
с помощью ajax-запроса на сервер, получения в ответ продукта JSON и заполнения div данными JSON с использованием манипуляции DOM.
РЕДАКТИРОВАТЬ: Используя JSON, сложные данные могут быть представлены в удобном для чтения текстовом формате, объектно-ориентированным способом. Посмотрите на это -
var person = {
"firstName": "John",
"lastName": "Smith",
"address": {
"streetAddress": "21 2nd Street",
"city": "New York",
"state": "NY",
"postalCode": 10021
},
"phoneNumbers": [
"212 555-1234",
"646 555-4567"
]
};
person
- это объект JSON, состоящий из следующих свойств: «firstName», «lastName» и т. Д. Вы можете получить доступ к этим свойствам, используя person.firstName
, person.lastName
и т. Д.
Это пример JSON, вы можете использовать его, чтобы создать собственную строку JSON, содержащую информацию о продукте, и отправить ее в массиве клиенту. Короче говоря, это будет массив таких объектов -
var persons = [person1, person2, person3, ...]; //person1, person2, etc. are objects like the person object declared above.
Вы можете использовать класс DataContractJsonSerializer (в Framework 3.5) для сериализации / десериализации объекта в JSON и из него. Если вы используете Framework <3.5, вы можете использовать <a href="http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx" rel="nofollow noreferrer"> JavaScriptSerializer класс AjaxToolKit , чтобы сделать то же самое.