Я использую виджет вкладок jquery и заполняю каждую панель вкладок содержимым с другой страницы aspx.
Выглядит так:
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<div id="tabs">
<ul>
<li><%: Html.ActionLink("PENDING", "PendingList", "Admin")%></li>
<li><%: Html.ActionLink("APPROVED", "ApprovedList", "Admin")%></li>
<li><%: Html.ActionLink("DENIED/CANCELED", "CanceledList", "Admin")%></li>
</ul>
</div>
Страница, вставляемая как контент, выглядит следующим образом:
<table cellpadding="2" cellspacing="0" border="1">
<thead>
<tr>
<td>Event name</td><td>Private</td><td>Location</td><td>Start date</td>
<td>Duration</td><td>Asset</td><td>Contact name</td><td>Email</td><td>Phone</td>
</tr>
</thead>
<tbody>
<tr>
<td>Some event Name<input type="hidden" id="bookingId" value="1"></td>
<td>Yes</td>
<td>...</td>
...
</tr>
</tbody>
</table>
На родительской странице, где размещен виджет вкладки, я пытаюсь прочитать значения из тела таблицы elemnt.
$(document).ready(function () {
function initializeCanceledTab(tabPanel/**/) {
var tabRows = $(tabPanel).find("table tr");
tabRows.each(function (index, domEl) {
var id = $(this).find("input:hidden").val();
or
var id = $(this).find("#bookingId:hidden").val();
or
var id = $(this).find("input:has[type='hidden']").val();
});
});
Я могу прочитать все значения, кроме значения в скрытом поле. $ (this) является элементом tr. Проверка его (innerHTML) показала, что там нет скрытого ввода. Но когда страница отображается, Firebug и инструмент разработки IE показывают скрытый ввод.
Кто-нибудь встречал эту проблему? Буду очень признателен, если кто-то может помочь. Спасибо.