none
asp.net模拟提交form的问题 RRS feed

  • 问题

  • 通过document.form1.submit();模拟提交form,在asp、php、jsp等登陆页面中都没有问题,可以顺利登陆exchange,但是普通的asp.net页面总是无法成功,有人有做过类似的吗?

    .net下是否有特殊的处理?
    2009年7月9日 8:08

答案

  • 楼主可以观察一下输出的页面代码中是否含有__doPostBack函数?应该可以调用这个函数来模拟提交。

    理解的越多,需要记忆的就越少
    2009年7月9日 9:49
    版主

全部回复

  • 楼主可以观察一下输出的页面代码中是否含有__doPostBack函数?应该可以调用这个函数来模拟提交。

    理解的越多,需要记忆的就越少
    2009年7月9日 9:49
    版主
  • 因为asp.net的web form机制,asp.net默认下强制提交给当前页,也就是action指向自己。
    您可以去掉form中的runat='server',但这样将不能使用服务器端控件。
    2009年7月9日 11:22
    版主
  • 需要.Net 3.5 SP1

    Please mark the post answered your question as the answer, and click the chartreuse pyramid floating over nothingness/null to mark other helpful posts as helpful. This posting is provided "AS IS" with no warranties, and confers no rights.
    Visual C++ MVP
    2009年7月9日 18:05
    版主
  • 楼主,你好


    asp.net也是可以用这种方式提交的。
    不过正如Jiyuan的回答,form不能用runat=SERVER.因此无法使用服务器端控件。
    另外如果你要提交为什么一定要用document.form1.submit();这种方式呢。ASP.NET中能提交的button都能满足你的要求。
    Microsoft Online Community Support
    2009年7月10日 3:06
  • 楼主可以观察一下输出的页面代码中是否含有__doPostBack函数?应该可以调用这个函数来模拟提交。

    理解的越多,需要记忆的就越少

    很对,通过js函数__doPostBack,直接传参数就ok了,.net把form的post提交给封装了。哈哈。。。
    2009年7月11日 4:39