在HTML中,a标签的提交默认是get方式提交的,如果在请求链接的参数中带有中文就会出现乱码问题,除了在后台程序中转码外,这里介绍两种简单的方法,可以在客户端让a标签以post方式提交。 
一:增加一个form表单 

<span ><body>
<a href="javascript:doPost("addStudent.action", {"name":"张三"})">提交</a> <script>
function doPost(to, p) { // to:提交动作(action),p:参数
var myForm = document.createElement("form");
myForm.method = "post";
myForm.action = to;
for (var i in p){
var myInput = document.createElement("input");
myInput.setAttribute("name", i); // 为input对象设置name
myInput.setAttribute("value", p[i]); // 为input对象设置value
myForm.appendChild(myInput);
}
document.body.appendChild(myForm);
myForm.submit();
document.body.removeChild(myForm); // 提交后移除创建的form
}
</script>
</body></span>

二:使用Ajax 

<span ><body>
<a href="addStudent.action" class="a_post">提交</a> <script>
$(".a_post").on("click",function(event){
event.preventDefault(); // 使a自带的方法失效,即无法向addStudent.action发出请求
$.ajax({
type: "POST", // 使用post方式
url: "addStudent.action",
contentType:"application/json",
data: JSON.stringify({param1:value1, param2:value2}), // 参数列表,stringify()方法用于将JS对象序列化为json字符串
dataType:"json",
success: function(result){
// 请求成功后的操作
},
error: function(result){
// 请求失败后的操作
}
});
});
</script>
</body></span>

【转】HTML怎样使用a标签以post方式提交的更多相关文章

  1. html 标签: image也能提交form!!!

    html 标签: image也能提交form! !! image也能提交form 先前常常使用"<input type="submit" value="i ...

  2. 彻底解决eslint与webstorm针对vue的script标签缩进处理方式冲突问题

    彻底解决eslint与webstorm针对vue的script标签缩进处理方式冲突问题 2018年12月08日 21:58:26 Kevin395 阅读数 1753   背景不多介绍了,直接上代码. ...

  3. script标签引入vue方式开发如何写组件

    title: script标签引入vue方式开发如何写组件 date: 2020-05-08 sidebarDepth: 2 tags: vue 组件 script 标签 categories: vu ...

  4. PHP自学3——在html的<table>标签中显示用户提交表单

    为了更好地显示用户提交表单,本节将在上一节的基础上将读取的用户表单显示在html的<table>标签中,这一节将用到和数组有关的知识. 本节代码将从外部文件(.txt文件)中读取信息于指定 ...

  5. jsp中一个标签两种方式绑定两个click事件导致未执行的问题

    近日,在开发过程中,写了一个标签 <li id="a1" onclick="doSomething()">...</li> 在js页面中 ...

  6. python全栈开发 * 表格标签 表单标签 css 引入方式 * 180807

    html部分 一.表格标签<table> 1.一个表格<table>由每行<tr>组成的,每行是由<td>组成的. 注意: 一个表格是由行组成的(行是由 ...

  7. 利用struts2<s:token>标签防止用户重复提交

    当用户填写完表单后,在提交过一次后,若用户做如下操作比如再次点击提交.刷新页面.提交页面呈现后点击后退按钮,都会导致表单重复提交.如果信息需要存储到后台数据库中,重复提交就会再次向数据库中插入用户信息 ...

  8. A标签/按钮防止重复提交&页面Loading制作

    [实现原理] 防止重复提交与页面的提交时的Loading设置,均是在提交,但是尚未处理完成进行的操作,且提交为异步提交(同步提交不需要考虑).因此,其实现原理是在点击按钮或A标签时,将按钮/A标签置为 ...

  9. ie8下面版本号(包含ie8)的浏览器不支持html5标签属性解决方式(Modernizr 2.6.2插件的使用)

    我这边申明下:我写这篇日志主要是想然ie8可以支持html5的个别标签闭合,并不能让ie全然支持html5.我之前写的可能会误导非常多同学.希望大家能明确. 今天脑抽想用html5标签设计一个网页.我 ...

随机推荐

  1. Ubuntu 18.04 LTS 64位Linux搭建Kubernetes 1.15.3并join子节点的完整过程

    1.软件准备 1.1.Ubuntu系统安装 https://ubuntu.com/download#download ubuntu系统需要设置用户,root默认为系统的账户不能被用户设置且每一次开机都 ...

  2. ActiveMQ基础01——Linux下载安装ActiveMQ

    1.下载 下载地址:http://activemq.apache.org/ 点击按钮 下载Linux下最新版安装包,点击即可下载 2.安装ActiveMQ 将之前下载的安装包上传到linux当中,一般 ...

  3. 【小知识】比较 x^y 和 y^x 的大小

    往前翻几个编号相邻的题目翻到了这么一道题,感觉很好奇就做了一下 (upd:我下午问了下出题人做法,他就把题隐藏了……这不太友好啊……所以我补一下题意:) 题意 给你两个整数 $x$ 和 $y$,求 $ ...

  4. ibatis与mybatis的区别

    一.最主要的区别就是mybatis简化了编码的过程,不需要去写dao的实现类,直接写一个dao的借口,再写一个xml配置文件,整个mybatis就配置好了,也就是数据库就连接好了,然后再service ...

  5. java读写大文件

    java读写2G以上的大文件(推荐使用以下方法) static String sourceFilePath = "H:\\DataSource-ready\\question.json&qu ...

  6. windows server没有这台电脑图标

    rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0

  7. Linux排查问题工具汇总

    geektime专栏<linux性能优化实战>笔记 一.Linux问题排查命令 uptime top free vmstat iostat ifstat 二.Sun JDK自带工具 jps ...

  8. Redis中info all命令解析

    127.0.0.1:8376> info all# Server    --- 服务器信息redis_version:2.8.20 -- redis服务器版本redis_git_sha1:000 ...

  9. 直通BAT必考题系列:深入详解JVM内存模型与JVM参数详细配置

    VM基本是BAT面试必考的内容,今天我们先从JVM内存模型开启详解整个JVM系列,希望看完整个系列后,可以轻松通过BAT关于JVM的考核. BAT必考JVM系列专题 1.JVM内存模型 2.JVM垃圾 ...

  10. JS实现表单全选以及取消全选实例

    实现效果: 全选按钮:点击全选按钮所有的小按钮都会被选中:点掉全选按钮,所有按钮取消选中: 小按钮:只有全部被选中,全选按钮才会被选中 思路分析: 1.全选和取消全选做法:让下面所有复选框的 chec ...