ASP.NET Forms и jQuery Mobile Противоречивая логика - PullRequest
0 голосов
/ 03 ноября 2011

Я сталкиваюсь с тем, что выглядит как противоречие между jQuery Mobile и ASP.NET Forms.У меня есть две страницы, между которыми я использую переходы страниц jQuery Mobile.Базовая структура выглядит примерно так:

<html>
<body>
<div id="page1" data-role="page">
   <form id="aspNetForm" runat="server">
      Page 1
      <a href="#page2">Page 2</a>
      <!-- Some more ASP.NET controls that require the aspNetForm -->
   </form>
</div>
<div id="page2" data-role="page">
   Page 2
   <a href="#page1">Page 1</a>
</div>
</body>
</html>

Обратите внимание, что тег формы присутствует только на первой странице.Это потому, что ASP.NET допускает только одну форму на страницу.Когда я пытаюсь переместить тег формы за пределы div страницы, jQuery Mobile начинает работать странно (в частности, переходы страниц начинают выглядеть странно).Это становится проблемой, когда я хочу использовать любые веб-элементы управления ASP.NET, которые доставляют ввод на второй странице.

В основном существуют эти правила, которые по сути приводят к противоречию:

ASP.NET:
1) All web controls that deliver an input must be within an ASP.NET form tag
2) Only one ASP.NET form tag can be visible (as in visible=True, not display: block) per page request

jQuery Mobile:
1) All content, including forms, must be within a page div

Может кто-нибудь придумать, как обойти это?Я думаю, что я мог бы ограничить page2, чтобы использовать только традиционный HTML, а не веб-элементы управления, но это не кажется самым элегантным решением.Есть идеи?Кто-нибудь еще сталкивался с этим?

1 Ответ

0 голосов
/ 04 ноября 2011

Хорошо.На мой взгляд, простым решением было бы дать каждой странице свой собственный .aspx-файл.Это бы хорошо работало.

Если ваш сайт очень большой, это также улучшит производительность.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...