日期:2014-05-17  浏览次数:20799 次

jsp中table上的鼠标响应事件问题
  在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");  //这一句都执行的
}

------解决方案--------------------
末尾加个return,没执行是不是action对应的servlet没有执行到,用直接访问servlet的方法看看是否正常
------解决方案--------------------
var frmServlet;
function showMessage()

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

------解决方案--------------------
如果还是不行,你看看是不是你的action路径不正确,是否应该是 action="/MyServlet"
------解决方案--------------------
serlvet看下。
------解决方案--------------------
先测试是否进入servlet
------解决方案--------------------
  <table width="150" height="300" align="left" onclick="showMessage()">

这里的事件相当于全局事件,是table的事件,优先级最高,最先执行。
------解决方案--------------------
<a herf=""></a>改成<a herf="javascript:void(0)"></a>就可以了
------解决方案--------------------
把代码改为
function showMessage()
{
  fUserMan.submit();
  alert("procedure at here");  //这一句都执行的
  return false;// 屏蔽a标签自身的href属性
}
试试
------解决方案--------------------
1.要在你的table中加入tr,td之类的不然你在table中加入的任何函数都不会起中用.

2.再看你的web.xml 中<url-pattern>/MyServlet</url-pattern>是不是这样配置的