我在这里使用JavaScript来删除员工......
<script type="text/javascript">
function delet(emp)
{
var answer = confirm('Are you sure?');
if(answer)
{
window.location='delete.php?emp='+emp;
}
}
</script>
通过使用锚标签调用javascript ....
的功能<a onclick="javascript:delet('<? echo $_GET['emp']; ?>')">
<input type="button" name="delete" id="delete" style="background: url('images/del1.jpg')no-repeat;width:50px;height:50px" value=""/></a>
但我的问题是它正在显示警告信息,但在回复警报信息后,它没有重定向到我给出的页面“delete.php?emp = + emp”
答案 0 :(得分:7)
因为您在<input type="Submit"/>
内嵌入了<a>
,所以点击按钮与点击<a>
不同,而不是“提交”无处(阅读页面你在<a>
可以完成任务之前,已经开启,刷新页面。
Simple demo 不去google。
<a href="http://google.com/"><input type="Submit"/></a>
Bergi pointed out我所描述的行为不是通用的 (你好,Opera,IE) ,除非{{1}元素存在,所以for example以下
<form>
会直接将您发送到 jail ,而不会在所有浏览器中传递 go 或收取200英镑。
此外,这仅适用于页面重定向;其他部分的脚本可能会在页面更改之前触发,最容易观察到的是<form action="jail.php">
<a href="go.php" onclick="window.location='?collect=£200';">
<input type="submit"/>
</a>
</form>
,console.log
等。
答案 1 :(得分:0)
您点击该按钮即可提交表格。该提交过程将否决window.location
导航请求。一个快速的解决方法是防止:
<a onclick="event.preventDefault(); delet('<? echo $_GET['emp']; ?>');">
// cross-browser-safe:
<a onclick="delet('<? echo $_GET['emp']; ?>'); return false">
但实际上你使用嵌套按钮的标记很奇怪。您根本不需要该链接,只需使用
即可<form action="delete.php" onsubmit="return confirm('Are you sure');">
<input type="hidden" name="emp" value="<? echo $_GET['emp']; ?>" />
<input type="submit" name="delete" id="delete" style="background: url('images/del1.jpg')no-repeat;width:50px;height:50px" value="" />
</form>