在form中有个table,在table上有个鼠标单击事件,在鼠标单击事件处理函数中提交form给servlet处理,但是为什么提交不了,没有异常,但就是不执行后台的servlet。  来一位大侠,求助信号满格<form name="fUserMan" action="MyServlet" method="post">
  <div style="left:0px;overflow:scroll;height:90%;width:170;position:absolute;">
    <table width="150" height="300" align="left" onclick="showMessage()">
    </table>
  </div>
</form>function showMessage()
{
  fUserMan.submit();
  alert("procedure at here");  //这一句都执行的
}

解决方案 »

  1.   

    末尾加个return,没执行是不是action对应的servlet没有执行到,用直接访问servlet的方法看看是否正常
      

  2.   

    var frmServlet;
    function showMessage()

      frmServlet = document.fUserMan;
      frmServlet.submit();
      alert("procedure at here");  //如果正常提交,这一句不应该执行
      

  3.   

    如果还是不行,你看看是不是你的action路径不正确,是否应该是 action="/MyServlet"
      

  4.   

    servlet都没问题的,就是个转发语句。
    原来问题是我在table中加了个<a herf="">test</a><form name="fUserMan" action="MyServlet" method="post">
      <div style="left:0px;overflow:scroll;height:90%;width:170;position:absolute;">
        <table width="150" height="300" align="left" onclick="showMessage()">
          <tr>
            <td>
              <a herg="">test</a>
            </td>
          </tr>
        </table>
      </div>
    </form>点击在table中的其他地方都可以执行提交的servlet的,就是点击在table中的test上就不行,为什么啊?
    怎么才能让他只响应点击test啊?怎么获得点击事件的文本啊?
      

  5.   

      <table width="150" height="300" align="left" onclick="showMessage()">这里的事件相当于全局事件,是table的事件,优先级最高,最先执行。
      

  6.   

    我把点击事件放到<a>上去,像这样
    <a herf="MyServlet">test</a>
    然后怎么在servlet中获得test这个文本
      

  7.   

    哎吆,算了吧,<a herf=""></a>,这里放servlet的地址根本就不行啊
      

  8.   

    <a herf=""></a>改成<a herf="javascript:void(0)"></a>就可以了
      

  9.   

    把代码改为
    function showMessage()
    {
      fUserMan.submit();
      alert("procedure at here");  //这一句都执行的
      return false;// 屏蔽a标签自身的href属性
    }
    试试
      

  10.   

    1.要在你的table中加入tr,td之类的不然你在table中加入的任何函数都不会起中用.2.再看你的web.xml 中<url-pattern>/MyServlet</url-pattern>是不是这样配置的