今天在对表单的项目进行删除时出现了问题,原因就出现在点击input按钮时,这个input属性是type='button'还是type=‘submit'。

代码大致如下:

<script type="text/javascript">
//获得选中文件的文件名
function GetCheckfolderItem() {
var allSel = '';
if (document.form1.deleteid.value) //如果document.form1.deleteid不是数组,只是一个元素,那么直接返回这个元素的值
{
return document.form1.deleteid.value;
}
for (i = 0; i < document.form1.deleteid.length; i++) //length属性可获取数组中元素的个数
{
if (document.form1.deleteid[i].checked) {
if (allSel == ''){ allSel = document.form1.deleteid[i].value;}
else { allSel = allSel + "," + document.form1.deleteid[i].value;}
}
}
return allSel;
} function DoSubmit(myfolder) {
var selid = GetCheckfolderItem(); //获取选中邮件的id
if (selid == '') {
alert("你没选中任何信息!");
return false;
}
if (window.confirm("你确定要删除这些消息么?")) {
location = "pm.php?dopost=del&ids=" + selid + "&folder=" + myfolder; //folder判断要删的是收件箱还是发件箱的邮件
}
}
</script>
<form action="pm.php" method="post" name="form1">
<input type='hidden' name='dopost' value='del' />
<table>
<tr>
<th>标题</th>
<th>收件人</th>
<th>状态</th>
<th>发送时间</th>
</tr>
{dede:datalist}<!--遍历邮件-->
<tr>
<td>
<input name="deleteid" type="checkbox" value="{dede:field.id/}" /> 一个邮件
</td>
<td>mqiang02</td>
<td>已阅读</td>
<td>2013-7-7</td>
</tr>
{/dede:datalist}
<tr>
<td>
<input type="submit" value="删除选中" onclick="DoSubmit('<?php echo $folder; ?>')"/>
<button type="button" onclick="DoSubmit('<?php echo $folder; ?>')">删除选中</button>
</td>
</tr>
</table>
</form>

先在pm.php中下一个断点die();阻止pm.php对页面的重定向。

结果当我选中某个邮件后,单击第一个按钮时,浏览器的url是:http://localhost/dede/member/pm.php(所选邮件无法删除)

单击第二个按钮时,浏览器的url是:http://localhost/dede/member/pm.php?dopost=del&ids=10&folder=outbox(邮件正常删除)

通过比较可知type='submit'只执行提交表单这一操作,没有执行location这个跳转链接;而type='button'则在执行完onclick()后,跳转文件在 js文件里控制。

type='button'和'submit'的区别的更多相关文章

  1. button 和 submit 的区别

    表单提交中button和submit的区别submit是button的一个特例,也是button的一种,它把提交这个动作自动集成了,submit和button,二者都以按钮的形式展现,看起来都是按钮, ...

  2. 在jQuery ajax中按钮button和submit的区别分析

    在使用jQuery ajax的get方法进行页面传值,不能用submit,否则无刷新获取数据展示 点击submit提交按钮,sendPwd.php通过$_POST接收传过来的值,然后echo一段数据. ...

  3. input button 与 submit 的区别

    在表单中,我们会经常提交数据,通常使用<input type="submit" value="提交"/>进行提交数据, 另一种方式是使用<bu ...

  4. 2014/4/18 ① button与submit的区别 ②现象 : 数据库中其他值可以取到 有的却取不到 解决 看获取时“#”有无

    ①<input type="button" /> 这就是一个按钮.如果你不写javascript 的话,按下去什么也不会 发生. <input type=&quo ...

  5. input的button和submit的区别

    故事由来: 其实这个问题,昨天已经遇到过,但是昨天是公司的一枚老员工帮助我这个实习生调的,而且我也确(猜)定(测)那枚老员工也不知道这个区别.然后今天又遇到相同问题. 故事梗概: 现在公司里面做一个项 ...

  6. 表单提交:button input submit 的区别

    http://harttle.com/2015/08/03/form-submit.html 最近项目代码中的表单提交的方式已经百花齐放了,现在用这篇文章来整理一下不同表单提交方式的区别,给出最佳实践 ...

  7. [转]表单提交:button input submit 的区别

    博客转自于   http://harttle.com/2015/08/03/form-submit.html  ,同时自己做了稍微改动 最近项目代码中的表单提交的方式已经百花齐放了,现在用这篇文章来整 ...

  8. 表单提交中的input、button、submit的区别

    1.input[type=submit] 我们直接来看例子: 代码如下: <form> <input name="name"> <input type ...

  9. form表单重复提交,type=“button”和type=“submit”区别

    公司测试提了一个项目后台在IE浏览器下(360,firefox就没问题)出现数据重复的问题,调试了好久终于发现问题所在,也不知道是谁写的代码,醉醉的.... 错误地点: <input type= ...

随机推荐

  1. jQuery 插件开发——PopupLayer(弹出层)

    导读:上次写了一篇关于GridView的插件开发方法,上几天由于工作需要,花了一天左右的事件封装了popupLayer(弹出层)插件.今天有时间就记录一下自己的开发思想与大家分享下,同时也算是对这段时 ...

  2. c++ 委托构造函数

    #include<iostream> ; using namespace std; class Cbox{ int a ; int b ; int c ; public: int g ; ...

  3. Windows10远程报错:由于CredSSP加密Oracle修正(ps:Win10家庭版)

    Windows10远程桌面连接 报错信息 : 网上找到方法 但是奈何是 "Win10家庭版" 不能使用这个办法,具体操作可以看最后的引用链接 !!!! 策略路径:“计算机配置”-& ...

  4. unity googleplay随手记

    googleplay设置 进入play console后可以发布应用 点击所有应用->创建应用(这部经常报错误码,多试几次就ok可能和vpn有关) 创建一个应用成功后,这个应用就会包含上面所有选 ...

  5. poj2406 Power Strings(kmp)

    poj2406 Power Strings(kmp) 给出一个字符串,问这个字符串是一个字符串重复几次.要求最大化重复次数. 若当前字符串为S,用kmp匹配'\0'+S和S即可. #include & ...

  6. 网络通讯与IP地址

    1.主机:Host,台式机,笔记本,手机等设备 2.网络介质:网线,光纤,无线网Wi-Fi.移动网络 3.数据:一串子节 网络通讯的检测:安装wireshark,通常称为抓包工具 抓,capture ...

  7. P4219 [BJOI2014]大融合 LCT维护子树大小

    \(\color{#0066ff}{ 题目描述 }\) 小强要在\(N\)个孤立的星球上建立起一套通信系统.这套通信系统就是连接\(N\)个点的一个树. 这个树的边是一条一条添加上去的.在某个时刻,一 ...

  8. luogu2948 滑雪课

    题解里面全是dp的大神本蒟蒻瑟瑟发抖奉上一篇记忆化搜索... 其实嘛,记忆化搜索还是很安全透彻清真人品的,一般递推不好实现dp可以用记忆化搜索 然后本题先预处理一个mint[i]代表当前能力值为i,参 ...

  9. 合并queryset

    今天在实现搜索时遇到一个问题,如何同时搜索model里面的title以及content和category字典 contents = Blog.objects.filter(content__conta ...

  10. java 在web应用中获取本地目录和服务器上的目录不一致的问题

    先来讲讲我所遇到的问题.最近有个新的项目添加新的功能. 修改之后部署到服务器上面发现取到classpath目录跑到别的地方去了.在本地测试却正常. 当时毛的着火了.硬是想不懂什么问题. 终于发现了这个 ...