如何在帖子后面更改QueryString?

时间:2011-07-11 20:52:41

标签: asp.net postback query-string

我想执行回发帖并将多个值添加到我的查询字符串中。我一直在使用重定向到相同的URL并简单地添加查询字符串参数但是当我这样做时,我的视图状态被清除,我需要避免。

由于我正在使用的技术(SharePoint),我必须使用查询字符串传递我的参数。

我做了一些环顾四周,但没有找到关于如何使用不同的查询字符串参数完成回发的明确答案。有没有办法做到这一点?

2 个答案:

答案 0 :(得分:6)

只是乱七八糟,但这会在表单提交之前通过修改主表单的action属性(在本例中为ct101)来添加查询字符串。 示例代码不会考虑进一步的回发..

<script type="text/javascript">
    var el = document.getElementById('ctl01');

    el.onsubmit = function (evt) {
        var url = $(this).attr('action');
        $(this).attr('action', url + '?sayHi=Hi');
    };

</script>

答案 1 :(得分:0)

尝试使用Server.Transfer而不是Response.Redirect。 Server.Transfer方法还有第二个参数 - “preserveForm”。如果将此设置为True,则使用Server.Transfer(“WebForm2.aspx”,True)等语句,现有的查询字符串和任何表单变量仍可用于要传输的页面。

所以基本上你可以转移到同一页面,但是使用新添加的查询字符串参数,你仍然可以访问旧值。