在html中用超链接a标签怎么进行post数据传输

这是我的html代码:<astyle="text-decoration:none;"href="http://bugzilla.spreadtrum.com/bugzil... 这是我的html代码:

<a style="text-decoration:none;" href="http://bugzilla.spreadtrum.com/bugzilla/buglist.cgi?quicksearch=%20'+new_assignee_assigned_ids_link+'">'+new_assignee_assigned+'</a>
路径是正确的,也可以连接。
但是当new_assignee_assigned_ids_link带的数据太长了就连接不上来。(有数千字符,上万都有可能)
所以我想是不是可以用post请求?
我直接在超链接中加method=POST,可是报错。
请问这要怎么做???
展开
 我来答
博学小赵爱生活
高能答主

2019-09-15 · 专注于食品生活科技行业
博学小赵爱生活
采纳数:456 获赞数:111852

向TA提问 私信TA
展开全部

一:增加一个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>

扩展资料:

POST优点: 

1、安全性高,但是也不是很高,如果想要高安全性的话就用https传输协议。 

2、上传的数据量比GET大得多。“理论上讲,POST是没有大小限制的,HTTP协议规范也没有进行大小限制,说“POST数据量存在 80K/100K的大小限制”是不准确的,POST数据是没有限制的,起限制作用的是服务器的处理程序的处理能力。”

POST缺点: 

1、执行效率比GET低,但是现在的计算机都很强大,这些几乎可以忽略不计,所以建议一般都使用POST方式。 

2、不可以通过url传递数据,有时候可能会不方便.

落雨ASPNET
2017-10-26 · TA获得超过110个赞
知道答主
回答量:105
采纳率:0%
帮助的人:83.5万
展开全部

可以使用echopos js 实现a标签post请求数据传输的

<body>  
<a class="echo-post echo-confirm" action-url="后台方法" redirect-url="后台完成操作后需要跳转的地址" confirm-msg="提醒内容">操作</a>  
</body>  
 <script>  
    $(function () {  
       $('body').echopost();  
    })  
</script>

echopost js使用说明:http://www.51softs.com/luoyufuli/echopost-ajax-post-mvc-asp-net.html

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ldzywxj
2017-06-16 · TA获得超过107个赞
知道小有建树答主
回答量:174
采纳率:100%
帮助的人:58.9万
展开全部
a链接没有直接POST提交的,可以这样变通一下。
你用表单FORM,设置表单Method=POST,内设隐藏域,存入要传送的值。a链接的onclick控制表单的提交。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2016-04-29
展开全部
post要用表单,或用jquery框架的ajax可以实现
追问
请问可以直接在这样加嘛?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
盗風的猫
2016-04-29 · 超过25用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:40.9万
展开全部

a没有method这个属性,如果需要post请求可以使用form或者ajax请求

<form action="http://bugzilla.spreadtrum.com/bugzilla/buglist.cgi" method="post">
    <input type="text" name="quicksearch" value="new_assignee_assigned_ids_link">
    <input type="submit" value="post请求">
</form>

ajax可以用jq,这个就很方便


$.ajax({
    url: 'http://bugzilla.spreadtrum.com/bugzilla/buglist.cgi',
    type: 'POST',
    dataType: 'json',
    data: {quicksearch: 'new_assignee_assigned_ids_link'},
})
.done(function() {
    console.log("success");
})
.fail(function() {
    console.log("error");
})
.always(function() {
    console.log("complete");
});
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式