使用input标签+location方法来触发js函数

来源:互联网 发布:windows主题手机 编辑:程序博客网 时间:2024/06/07 03:46

关于使用window.open(“url”)和window.location=”url”;方法区别:

Open:在新的页面打开url

Location:在当前页打开url

 

功能:

在删除功能上,使用标签触发一个函数,函数去定位一个Action方法,执行该Action方法。

 js函数代码:

function showMessage(custId){ var falg =window.confirm("你确定要删除吗?..")if(falg){//window.open("${pageContext.request.contextPath}/customerAction_delById?custId="+custId);window.location.href="${pageContext.request.contextPath}/customerAction_delById?custId="+custId;//window.location.href="${pageContext.request.contextPath}/customerAction_delById?custId="+custId;}

访问这个函数的两种方式:

1.  input标签

<input type="button" value="删除" onclick="showMessage('${customer.custId}')"/>

2.  button标签

<button onclick="showMessage('${customer.custId}')">删除</button>

 

一、首先说说使用button标签来触发这个函数遇到的问题:

如果使用button标签+ location方法来触发这个函数,使用火狐(57.0版本)和谷歌(61.0版本)浏览器则不会执行到路径中Action中的方法,(执行了表单提交的路径)。但是IE(11.674版本)可以执行到Action的方法。(具体原因是浏览器版本问题或button标签太老了)

如果使用button标签+ open方法来 触发这个函数,任何主流浏览都可以执行到路径中Action中的方法。但是打开了一个新的页面执行的url资源路径。

 

二、说说input标签触发这个函数

使用input标签+open来触发这个函数,在一个新的页面执行了url资源路径。并且执行了Action中的方法。

使用input标签+location方法 来触发这个函数,在当前页面正确执行了执行了url资源路径,并且执行了Action中的方法。

 

总结:

使用input标签+location方法 来触发这个函数可以完美解决这个问题。

 

 

 

 

 

原创粉丝点击