有一个很简单的ajax问题。求助!

凡夫与俗子 2009-07-25 10:33:59
下面这个页面是一个简单的例子,选择了一串数据,按submit进行操作,操作的一些提示是通过iframe来显示的
现在的问题是怎么样用ajax实现这样的提示,以代替iframe。a.asp写成ajax的服务器文件。
谢谢,如分数不够可以再加。

<form name="form1" id="form1" method="post" action="" target="subfrm">
<label>
<input name="aaa" type="checkbox" id="aaa" value="1">
11
</label>
<input name="aaa" type="checkbox" id="aaa" value="2">
22
<input name="aaa" type="checkbox" id="aaa" value="3">
33
<input name="aaa" type="checkbox" id="aaa" value="4">
44
<input name="aaa" type="checkbox" id="aaa" value="5">
55
<input name="aaa" type="checkbox" id="aaa" value="6">
66
<input name="aaa" type="checkbox" id="aaa" value="7">
77
<input name="aaa" type="checkbox" id="aaa" value="8">
88
<input name="aaa" type="checkbox" id="aaa" value="9">
99
<input type="button" name="button" id="button" value="按钮" onClick="getValues()">
<input type="button" name="button2" id="button2" value="删除" onClick="if (confirm('您真的要删除选中的数据吗?')){this.form.action='a.asp?action=del'; this.form.submit();}">
<input type="button" name="button3" id="button3" value="修改" onClick="edit();">
</form>


<iframe width="100%" height="300" name="subfrm" id="subfrm1"></iframe>

<script type="text/javascript">
function edit(){
var _value="";
var _r=0;
var ckbox = document.all("aaa");
//alert(ckbox.length);
for (var i=0; i<ckbox.length; i++){
//alert(i);
if (ckbox[i].checked){
//_val = ckbox[i].value;
_r ++ ;
//_value = _value + ckbox[i].value + ",";
}
}
if (_r>1){
alert("只能对一条数据进行修改!" + _r);
}

document.getElementById("form1").action='a.asp?action=edit';
document.getElementById("form1").submit();
}
</script>
...全文
221 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
凡夫与俗子 2009-07-27
  • 打赏
  • 举报
回复
忘记结贴了,老衲日!
凡夫与俗子 2009-07-25
  • 打赏
  • 举报
回复
我靠,终于等到你了。老衲很欣慰!我先去调试下。
toury 2009-07-25
  • 打赏
  • 举报
回复

<script type="text/javascript">
var s='';
function createXMLHTTP(){ //自己写xmlhttp对象创建代码
//...............

//.............
}

function laonai(){
var o=document.getElementsByName("aaa");
s='';
for (var i=0;i<o.length;i++){
if (o[i].checked){
s =(s.length==0)?o[i].value:s+","+o[i].value;
}
}
document.getElementById("vvv").innerHTML=s;
}


function edit(){
if (s.length>1){
alert("只能对一条数据进行修改!" + _r);
return false;
}

laonai_AJAX('edit');

}

function confirmit(){
if(!confirm('您真的要删除选中的数据吗?')){return false;}
if(s.length==0) {
alert('先选后删!');
return false;
}
laonai_AJAX('del');
}

function laonai_AJAX(flag){
var url="a.asp?id="+s+"&flag="+flag
var x=createXMLHTTP();
x.open("GET",url,true)
//........以下不用写了吧,自己找找


}
</script>

<div id=data>
<label>
<input name="aaa" type="checkbox" id="aaa1" value="1" onclick="laonai();">
11
</label>
<input name="aaa" type="checkbox" id="aaa2" value="2" onclick="laonai();">
22
<input name="aaa" type="checkbox" id="aaa3" value="3" onclick="laonai();">
33
<input name="aaa" type="checkbox" id="aaa4" value="4" onclick="laonai();">
44
<input name="aaa" type="checkbox" id="aaa5" value="5" onclick="laonai();">
55
<input name="aaa" type="checkbox" id="aaa6" value="6" onclick="laonai();">
66
<input name="aaa" type="checkbox" id="aaa7" value="7" onclick="laonai();">
77
<input name="aaa" type="checkbox" id="aaa8" value="8" onclick="laonai();">
88
<input name="aaa" type="checkbox" id="aaa9" value="9" onclick="laonai();">
99

<input type="button" name="button2" id="button2" value="删除" onClick="return confirmit();">
<input type="button" name="button3" id="button3" value="修改" onClick="edit();">
<br><br>
<div id="vvv"></div>
</div>

toury 2009-07-25
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 zxdldh007 的回复:]
非常感谢!我慢慢找。
感冒了,不想做事,诶!
[/Quote]
大热天的,少去尼姑庵转。不然怎么会感冒呢?哈哈
凡夫与俗子 2009-07-25
  • 打赏
  • 举报
回复
非常感谢!我慢慢找。
感冒了,不想做事,诶!
toury 2009-07-25
  • 打赏
  • 举报
回复
真惭愧,我找不到IE6了,连虚拟机也没装。只好麻烦你自己找找原因了;如果是IE,可这样:
function laonai(){
debugger;//加这个,然后进入调试后F11单步跟踪下
var o=document.getElementsByName("aaa");
s='';
for (var i=0;i<o.length;i++){
if (o[i].checked){
s =(s.length==0)?o[i].value:s+","+o[i].value;
}
}
document.getElementById("vvv").innerHTML=s;
}
toury 2009-07-25
  • 打赏
  • 举报
回复
创建的不错,呵呵
具体的AJAX代码我没写,太多可以参考的啦~~
凡夫与俗子 2009-07-25
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 toury 的回复:]
引用 5 楼 zxdldh007 的回复:
出错了,选中哪个JS就报哪个缺少对象。。。

IE7/ff3 下没发现【选中哪个JS就报哪个缺少对象】,你什么浏览器?砸了!呵呵
顺便把
alert("只能对一条数据进行修改!"+ _r);
红字去掉

[/Quote]
才学AJAX,我的是无比落后的IE6。你测试啦?那把上面没写全也贴出来。我不知道这么创建对不。

var s='';
function createXMLHTTP()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
toury 2009-07-25
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zxdldh007 的回复:]
出错了,选中哪个JS就报哪个缺少对象。。。
[/Quote]
IE7/ff3 下没发现【选中哪个JS就报哪个缺少对象】,你什么浏览器?砸了!呵呵
顺便把
alert("只能对一条数据进行修改!" + _r);
红字去掉
凡夫与俗子 2009-07-25
  • 打赏
  • 举报
回复
出错了,选中哪个JS就报哪个缺少对象。。。
凡夫与俗子 2009-07-25
  • 打赏
  • 举报
回复
出错了,选中哪个JS就报哪个缺少对象。。。
  • 打赏
  • 举报
回复
汗!这个例子在论坛或者GOOGLE多了去了!

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧