我有一个asp.net aspx页面,在该页面上我有一个隐藏的输入字段,其id和paneIndex。但是,当我加载页面时,警报显示索引1在第一次加载时是正确的,但是如果我打开窗格3,例如,警报仍显示1。我做错了吗?
在Custom.js文件中,我有以下代码:
$(document).ready(function() {
$("#accordion").accordion({
active: 1,
collapsible: true,
autoHeight: false,
change: function(event, ui) {
var activeIndex = $("#accordion").accordion('option', 'active');
$("#paneIndex").val(activeIndex);
//alert(activeIndex);
}
});
});
在我的服务器端按钮单击,我有以下代码:
string activeIndex = Request.Form["paneIndex"];
string script = string.Format(@"<script type=""text/javascript"">var paneIndex =
{0};</script>", activeIndex);
if(!ClientScript.IsStartupScriptRegistered("JSScript"))
ClientScript.RegisterStartupScript(this.GetType(),"JSScript", script);
答案 0 :(得分:0)
我刚刚在这里测试了jquery脚本,它没有表单提交/回发,对我来说很好。
因此,我认为您的问题与表单提交/ activeIndex变量未正确设置有关。
如果您使用asp.net,是否需要提交表单而不是使用回发? 如果可能的话,我总是尝试回发到服务器而不是表单提交。
如果您使用Visual Studio,您还可以尝试在服务器端代码上设置断点,并调查Request.Forms集合在提交后包含正确的变量。