Попробуйте, как я могу, я не могу получить заголовок Tab в JQuery ui 10.4. Я хотел бы добавить его как.data, чтобы я мог отправить его в окно диалога. Я уже делаю это с помощью идентификатора табуляции, но я не могу понять его с заголовком. Вот что у меня для ID.
$( "#add_item_opener" ).click(function() {
$( "#add_item_dialog" )
.data('curtab', $('#tabs').tabs('option','active')).dialog( 'open' );
});
});
Все, что я нахожу с помощью Google, похоже, работает только в том случае, если у вас установлена более старая версия JQuery.
Я что-то упускаю?
РЕДАКТИРОВАТЬ:
Наверное, я должен был быть более основательным. Вы дали мне часть того, что мне было нужно, чтобы получить заголовок Tab, но я все еще не могу заставить его работать. Я в основном отправляю идентификатор и заголовок Tab в диалоговое окно, чтобы я мог заполнять некоторые элементы ввода HTML. До сих пор мне удалось открыть окно и заполнить текстовое поле идентификатором. Теперь я хочу заполнить другое текстовое поле в том же окне заголовком. Вот мой полный код диалога открытия.
У меня есть кнопка на странице с id = 'add_item_opener', которая отлично работает. Я думаю, что моя самая большая проблема заключается в том, как отправить несколько переменных с помощью.data().
<!--Open add item dialog box-->
<script>
$(function() {
$( "#add_item_dialog" ).dialog({
height: 550,
width: 400,
autoOpen: false,
create: function() {
$('#curjobNum').val('154');
},
open : function (event, ui) {
var curTab = $('#add_item_dialog').data('curtab');
$('#curtabNum').val(curTab);
},
buttons: {
},
position: {
my: "center top",
at: "center top",
of: "#tabs"
},
show: {
effect: "blind",
duration: 1000
},
hide: {
effect: "clip",
duration: 1000
}
});
$( "#add_item_opener" ).click(function() {
$( "#add_item_dialog" )
.data('curtab', $('#tabs').tabs('option','active')).dialog( 'open' );
});
});
</script>
Здесь мои диалоговые окна:
<td><button id='add_item_opener'>Add a New Bid Item</button>
<div id='add_item_dialog' title = 'Bid Item Form' style = 'background-color: #ccc;'>
<br><br>
<form method='POST' action='' id='newBidItem'>
<table class='small' style = 'background-color: #ccc;'>
<tr><td>Tab/Title</td><td><input type='text' id='title' value='' readonly='readonly' /></td>
<tr><td>Company Name</td><td><input type='text' name='company' style='width: 150px;' value='' /></td>
<tr><td>Qty</td><td><input type='text' name='qty' style='width: 35px;' value='' /></td>
<tr><td>Description</td><td><textarea name='descript' cols='35' rows='5' ></textarea></td>
<tr><td>Material Spec</td><td><input type='text' name='materialSpec' value='' /></td>
<tr><td>Delivery</td><td><input type='text' name='delivery' value='' class='date-pick' /></td>
<tr><td>Unit Cost</td><td><input type='text' name='unit_cost' value='' /></td>
<tr><td>Discount % (if any)</td><td><input type='text' name='discount' value='' /></td>
</table>
<input type='hidden' value='' id='curtabNum' name='curtabNum' />
<input type='hidden' value='' id='curjobNum' name='curjobNum' />
<tr><td><input type='submit' value='Save' name='saveBidItem' id='saveBidItem' /></td>
</form>
</div>
Спасибо за всю помощь, поскольку я серьезный JQuery noob.
У вас есть 2 вопроса в вашем посте? Я отвечу за это:
Как получить выбранный заголовок закладки?
Во-первых, посмотрите этот пример: jsFiddle
Это то, чего вы хотите достичь? Выберите вкладку и click me
ссылку " click me
. Отобразится предупреждение с выбранным именем вкладки.
Код сценария Java:
var selected = $("#tabs").tabs("option", "active");
var selectedTabTitle = $($("#tabs li")[selected]).text();
alert(selectedTabTitle);
Это очень просто. Скажите, если вам нужны комментарии.
Обратите внимание: если вы используете jQuery <= 1.8, вам нужно использовать tabs("option", "selected");
, но если вы используете jQuery> 1.8, вам нужно использовать tabs("option", "active");
(источник)
Если у вас есть вопрос, как открыть диалог, создайте для него новое сообщение.