Javascript 如何在单击jQuery Accordion标题时更新隐藏字段值?

Javascript 如何在单击jQuery Accordion标题时更新隐藏字段值?,javascript,jquery,asp.net,jquery-ui-accordion,Javascript,Jquery,Asp.net,Jquery Ui Accordion,我正在使用隐藏字段存储手风琴的活动索引: var activeIndex = parseInt($('#ContentPlaceHolder1_hidAccordionIndex').val()); $("#accordion").accordion({ changestart: function () { var value = $(this).scrollTop(); window.scrollTo(0, value); }, auto

我正在使用隐藏字段存储手风琴的活动索引:

var activeIndex = parseInt($('#ContentPlaceHolder1_hidAccordionIndex').val());
$("#accordion").accordion({
    changestart: function () {
        var value = $(this).scrollTop();
        window.scrollTo(0, value);
    },
    autoHeight: false,
    event: "mousedown",
    active: activeIndex,
    collapsible: true,
    disabled: false,
    change: function (event, ui) {
        var index = $(this).children('h4').index(ui.newHeader);
        $('#ContentPlaceHolder1_hidAccordionIndex').val(index);
    }
});
当前,隐藏字段值在codebehind中设置。因此,如果用户单击accordion标题,我想根据已单击的标题更新隐藏字段的值


有什么办法吗?提前谢谢。

我在这方面做了一个与你完全相同的例子,效果很好

找不到当前标题索引的唯一可能原因是标记中可能有
标题,并且在
更改
处理程序中选择了


改变一个或另一个,它应该正常工作。

我在这方面做了一个与你完全相同的例子,它就像一个符咒

找不到当前标题索引的唯一可能原因是标记中可能有
标题,并且在
更改
处理程序中选择了


更改一个或另一个,它应该正常工作。

处理此问题的一种方法是向每个H3添加一个名为
accordionHeader
类。然后在accordian的初始构建之后,调用另一个事件处理程序

在我的示例中,我刚刚在
h3
上执行了一个绑定,以快速提供演示

$("#accordion").accordion();

$('h3').bind('click', function() {
    $('#HiddenInputField').val($(this).children('a').html());
    alert($('#HiddenInputField').val());
});

处理这个问题的一种方法是在每个H3中添加一个名为
accordioheader
类。然后在accordian的初始构建之后,调用另一个事件处理程序

在我的示例中,我刚刚在
h3
上执行了一个绑定,以快速提供演示

$("#accordion").accordion();

$('h3').bind('click', function() {
    $('#HiddenInputField').val($(this).children('a').html());
    alert($('#HiddenInputField').val());
});

使用以下函数更改事件处理程序:

change: function (event, ui) {
     var index = $(this).accordion("option", "active");
     $('#ContentPlaceHolder1_hidAccordionIndex').val(index);
}

更改
事件处理程序使用以下函数:

change: function (event, ui) {
     var index = $(this).accordion("option", "active");
     $('#ContentPlaceHolder1_hidAccordionIndex').val(index);
}

您的
change
处理程序中没有这样做吗?我试图在change处理程序中这样做,但不知怎么的,它没有得到新的索引。我想我可能使用了错误的处理程序…它没有获取已单击的标题的值。因此,它不会更新隐藏字段值。有什么线索吗?你真的在使用
标题元素吗?除了我使用的
:谢谢你,伙计!那是我的问题。我不得不把标签改成h4。。。当做您的
change
处理程序中没有这样做吗?我试图在change处理程序中这样做,但不知怎么的,它没有得到新的索引。我想我可能使用了错误的处理程序…它没有获取已单击的标题的值。因此,它不会更新隐藏字段值。有什么线索吗?你真的在使用
标题元素吗?除了我使用的
:谢谢你,伙计!那是我的问题。我不得不把标签改成h4。。。当做