gpt4 book ai didi

javascript - Jquery UI 选项卡 : Next and Previous enable/disable based on select boxes

转载 作者:行者123 更新时间:2023-11-30 13:17:02 24 4
gpt4 key购买 nike

我目前正在使用 Jquery UI 选项卡,我只能使用下一个/上一个按钮进行操作(这将强制用户按顺序浏览选项卡)。在我的第一个选项卡中,我有一组动态选择框,我试图让用户在启用 NEXT 按钮之前从对应的类别及其子类别中选择。但是下一个按钮根本没有被禁用。

如何让用户从所有相应的选择框中进行选择,然后启用“下一步”按钮? EXAMPLE

我将 $('.update').change(function() 添加到 NEXT/PREVIOUS 的 JS 中,以检测最后一个选择框中的所选项目并为 NEXT 按钮提供支持

下一个/上一个的 JS

<script>
$(function() {
var $tabs = $('#tabs').tabs({
disabled: [0, 1]
});

$(".ui-tabs-panel").each(function(i) {
var totalSize = $(".ui-tabs-panel").size() - 1;

if (i != totalSize) {
next = i + 2;
$(this).append("<a href='#' class='next-tab mover' rel='" + next + "'>Next Page &#187;</a>");
}

if (i != 0) {
prev = i;
$(this).append("<a href='#' class='prev-tab mover' rel='" + prev + "'>&#171; Prev Page</a>");
}
});

$('.update').change(function() {
$('#tabs').tabs(
'option',
'disabled',
(
$(this).hasClass('last') &&
parseInt($(this).val(), 10) > 0 ?
[] :
[1]
)
);
});

$('.next-tab, .prev-tab').click(function() {
var tabIndex = $(this).attr("rel");
$tabs.tabs('enable', tabIndex)
.tabs('select', tabIndex)
.tabs("option","disabled", [0, 1]);
return false;
});
});
</script>

upadateSelectBox.js

// following line is added to detect last select box picked
$('.update').removeClass('last');
if (!data.error) {
obj.next('.update').html(data.list).removeAttr('disabled hidden');
} else {
// following line is changed
obj.addClass('last').nextAll('.update').attr({'disabled': true, 'hidden':true}).html('<option value="">----</option>');
}

选择框的 HTML

<select name="gender" id="gender" class="update" size="7"> 
<option value="">Select one</option>
<?php if (!empty($list)) { ?>
<?php foreach($list as $row) { ?>
<option value="<?php echo $row['id']; ?>">
<?php echo $row['category_name']; ?>
</option>
<?php } ?>
<?php } ?>
</select>

<select name="category" id="category" class="update" disabled="disabled" hidden="hidden" size="7">
<option value="">----</option>
</select>

<select name="colour" id="colour" class="update" disabled="disabled" hidden="hidden" size="7">
<option value="">----</option>
</select>

最佳答案

好的,这是未经测试的。仅在下一次/上一次点击时更改选项卡,如果您不在第一个选项卡上 (1)真正的最后一个 选项卡存在并且有一个选项(中性除外)选择 (2)

$('.next-tab, .prev-tab').click(function() {
var tabIndex = $(this).attr("rel");
if (
/*(1)*/ $('#tabs').tabs('option', 'selected') > 0 ||
/*(2)*/ ($('.update.last').length > 0 && parseInt($('.update.last').val(), 10) > 0)
) {
$tabs.tabs('enable', tabIndex)
.tabs('select', tabIndex)
.tabs("option","disabled", [0, 1]);
}
return false;
});

祝你好运,明天见:-)

关于javascript - Jquery UI 选项卡 : Next and Previous enable/disable based on select boxes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11674461/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com