如何编写一个实现post功能的JS脚本 jsasp 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这是 jQuery 的 Ajax 方法,是包装好的 如果需要自己写,当然是可以的。也就二三十行代码吧既然你只是 JS大致能看懂,那么建议你就不要自己写了。还是使用 jQuery 比较实惠 类似下面做法就行,具体参考jquery ajaxvar inputdata = '{'id':123,'username':”Xiaoming“}';$.ajax({ type: "POST", url: "test.asp", contentType: "application/json; charset=utf-8", async: true, cache: false, dataType: 'json', data: inputdata, success: function (data, textStatus) { ////// }, error: function (data, textstatus) { ///// } }); 看lz贴的代码LZ贴的代码应该不是jquery的。看看参数样式,是无索引的 网上搜下ajax实现源码,一堆。只不过要实现$.post和它的参数接受风格 从jquery扒下来还不如直接引用 看错了,jquery也接受这样风格的参数呢 写了一个简单的js的post请求, 如果需要参数配置LZ再进一步修改吧 function post(url, data, success, error){ var ajax; if(window.XMLHttpRequest){ //Mozilla 浏览器 ajax = new XMLHttpRequest(); if (ajax.overrideMimeType) ajax.overrideMimeType("application/json"); } else if (window.ActiveXObject){ // IE浏览器 try{ ajax = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e){ try{ ajax = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!ajax) { window.alert("不能创建XMLHttpRequest对象实例."); return false; } ajax.open("post", url, true); ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); ajax.send(data); ajax.onreadystatechange = function(){ if (ajax.readyState == 4 && ajax.status == 200){ if(success) success(ajax.responseText); }else{ if(error) error(ajax); } } } // 调用 post("http://localhost/index.php", {nnn: 1}, function(data){alert(data);}, function(){alert('error')}); 谢谢您的提醒,我之前不知道还需要先引用一个jQuery库。我现在页面的核心代码是这样的<head><script type="text/javascript" charset="utf-8" src="http://www.test.com/library/jquery-1.7.1.min.js"></script><script type="text/javascript">alert('Checkpoint1');var id = 1;var username = "Xiaoming";$.post("http://www.test.com/votetest/add.asp", {'id':id,'username':username}, function(data){if(data==1){ alert('Success'); } else{alert('Failed')}},'json');alert('Checkpoint2');</script></head>现在的问题是只会弹出checkpoint1 与checkpoint2两个对话框,中间的$.post似乎没有起作用,是还需要进行什么配置吗?抱歉之前没有说清楚这个问题的应用场景是我需要向一个网站反复多次提交表单,直接用按键精灵写脚本感觉效率比较低。我用C++写好了表单数据处理的部分,但提交这一部分一直搞不定。 js自动提示功能,总是一卡一卡的 谁能解释下这段代码? 求一个新浪微博登录时的提示js效果 求一个显示所有选定select值的方法 JS如何吧他弄成数组 谁有网上流传的那个javascript+xml实现二级下拉菜单的源码啊? 对话框问题?? 在新弹出窗口B输入查询信息,在原窗口A显示查询结果,并关闭新窗口。 img 为什么不显示 js中for循环中需要调用异步方法,怎么确保执行的顺序? AJAX提交表格某一行内容 javascript调用WScript.Shell使ie全屏的问题
如果需要自己写,当然是可以的。也就二三十行代码吧既然你只是 JS大致能看懂,那么建议你就不要自己写了。还是使用 jQuery 比较实惠
var inputdata = '{'id':123,'username':”Xiaoming“}';
$.ajax({
type: "POST",
url: "test.asp",
contentType: "application/json; charset=utf-8",
async: true,
cache: false,
dataType: 'json',
data: inputdata,
success: function (data, textStatus) {
//////
},
error: function (data, textstatus) {
/////
}
});
只不过要实现$.post和它的参数接受风格 从jquery扒下来还不如直接引用
var ajax;
if(window.XMLHttpRequest){ //Mozilla 浏览器
ajax = new XMLHttpRequest();
if (ajax.overrideMimeType)
ajax.overrideMimeType("application/json");
}
else if (window.ActiveXObject){ // IE浏览器
try{
ajax = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e){
try{
ajax = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {}
}
}
if (!ajax) {
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
} ajax.open("post", url, true);
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajax.send(data);
ajax.onreadystatechange = function(){
if (ajax.readyState == 4 && ajax.status == 200){
if(success)
success(ajax.responseText);
}else{
if(error)
error(ajax);
}
}
}
// 调用
post("http://localhost/index.php", {nnn: 1}, function(data){alert(data);}, function(){alert('error')});
<script type="text/javascript" charset="utf-8" src="http://www.test.com/library/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
alert('Checkpoint1');
var id = 1;
var username = "Xiaoming";
$.post("http://www.test.com/votetest/add.asp", {'id':id,'username':username}, function(data){
if(data==1){
alert('Success');
}
else{alert('Failed')}
},'json');
alert('Checkpoint2');
</script>
</head>现在的问题是只会弹出checkpoint1 与checkpoint2两个对话框,中间的$.post似乎没有起作用,是还需要进行什么配置吗?抱歉之前没有说清楚这个问题的应用场景是我需要向一个网站反复多次提交表单,直接用按键精灵写脚本感觉效率比较低。我用C++写好了表单数据处理的部分,但提交这一部分一直搞不定。