javascript setTimeout()传递函数参数(包括传递对象参数)


Posted in Javascript onApril 07, 2010

于是,上网查找了一下,用了另一种写法setTimeout("fun("+参数+")", 1000),还是不行,但是以上写法在传递form表单的textarea是可以的,比如hml是这样:

<body> 
<div class="main"> 
<div id="showpane" class="showpane"> </div> 
<div class="textarea"> 
<form method="post" action="" name="sform"> 
<textarea name="txtara"></textarea> 
<div> 
<input type="submit" name="subt" value="send" onclick="doAjax(sform.txtara.value);return false;"/> 
</div> 
</form> 
</div> 
</div> 
</body>

在js里边我可以这样子写:
setTimeout("doAjax(document.sform.txtara.value )", 1000);
但是一旦要传递其他什么参数或者是对象参数,按照网上提供的方法就是要重写这个函数了。
经过研究和实践,我自己改进了方法,大家可以参考借鉴一下,我只是依据我的个人需要,其他情况我也不能保证,请多多指教!
<body> 
<div class="main"> 
<div id="showpane" class="showpane"> 
</div> 
<div class="textarea"> 
<form method="post" action="" name="sform"> 
<textarea name="txtara"></textarea> 
<div> 
<input type="submit" name="subt" value="send" onclick="doAjax(sform.txtara.value, this);return false;"/> 
</div> 
</form> 
</div> 
</div> 
</body>

JavaScript:
function initAjax() { 
var httprequest=null; 
try { 
httprequest=new ActiveXObject("Msxml2.XMLHTTP"); 
} 
catch (e) { 
try { 
httprequest=new ActiveXObject("Microsoft.XMLHTTP"); 
} 
catch (e) { 
try { 
httprequest=new XMLHttpRequest(); 
} 
catch (e) { 
httprequest=null; 
} 
} 
} 
return httprequest; 
} 
function doAjax( msg, obj ) { 
var obj=obj; //主要是这一行 
alert( obj.value); 
var he="he="+msg; 
var ajaxrequest=initAjax(); 
ajaxrequest.open("POST", "abc.jsp", true); 
ajaxrequest.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); 
ajaxrequest.send(he); 
ajaxrequest.onreadystatechange=function() { 
if (ajaxrequest.readyState==4) { 
if (ajaxrequest.status==200) { 
document.getElementById("showpane").innerHTML=ajaxrequest.responseText; 
} 
else { 
doAjax( msg ); 
} 
} 
} 
setTimeout("doAjax(document.sform.txtara.value,document.all["+obj.sourceIndex+"])", 100);//还有这一行 
}

就这样,我解决了对象参数传递的问题,最后想说一句,能有更好的解决方法请作评论提出来,本人乐意与志同道合者学习!
Javascript 相关文章推荐
WordPress 插件——CoolCode使用方法与下载
Jul 02 Javascript
Jquery实现鼠标移上弹出提示框、移出消失思路及代码
May 19 Javascript
jQuery中closest()函数用法实例
Jan 07 Javascript
JavaScript检测上传文件大小的方法
Jul 22 Javascript
jquery获取url参数及url加参数的方法
Oct 26 Javascript
微信小程序 wxapp内容组件 progress详细介绍
Oct 31 Javascript
JavaScript中 this 指向问题深度解析
Feb 21 Javascript
源码分析Vue.js的监听实现教程
Apr 23 Javascript
Vue 事件处理操作实例详解
Mar 05 Javascript
微信小程序激励式视频广告组件使用详解
Dec 06 Javascript
小程序使用wxs解决wxml保留2位小数问题
Dec 13 Javascript
JavaScript实现滑动门效果
Jan 18 Javascript
javascript在事件监听方面的兼容性小结
Apr 07 #Javascript
javascript 程序库的比较(一)之DOM功能
Apr 07 #Javascript
JS 文件大小判断的实现代码
Apr 07 #Javascript
基于jquery的一个简单的脚本验证插件
Apr 05 #Javascript
js获取单元格自定义属性值的代码(IE/Firefox)
Apr 05 #Javascript
offsetParent 算法分析
Apr 05 #Javascript
javascript encodeURI和encodeURIComponent的比较
Apr 03 #Javascript
You might like
PHP4实际应用经验篇(6)
2006/10/09 PHP
某大型网络公司应聘时的笔试题目附答案
2008/03/27 PHP
php简单静态页生成过程
2008/03/27 PHP
php 中英文语言转换类
2011/09/07 PHP
PHP定时执行计划任务的多种方法小结
2011/12/19 PHP
php mysql PDO 查询操作的实例详解
2017/09/23 PHP
php实现数字补零的方法总结
2018/09/12 PHP
PHP创建对象的六种方式实例总结
2019/06/27 PHP
Swoole扩展的6种模式深入详解
2021/03/04 PHP
jquery插件jbox使用iframe关闭问题
2009/02/09 Javascript
JS(JQuery)操作Array的相关方法介绍
2014/02/11 Javascript
JS跨域问题详解
2014/11/25 Javascript
通过伪协议解决父页面与iframe页面通信的问题
2015/04/05 Javascript
js仿小米官网图片轮播特效
2016/09/29 Javascript
原生JavaScript实现Tooltip浮动提示框特效
2017/03/07 Javascript
node.js中debug模块的简单介绍与使用
2017/04/25 Javascript
通过vue刷新左侧菜单栏操作
2020/08/06 Javascript
js实现简单扫雷
2020/11/27 Javascript
Python文件操作类操作实例详解
2014/07/11 Python
python学习之matplotlib绘制散点图实例
2017/12/09 Python
tensorflow识别自己手写数字
2018/03/14 Python
Python3+OpenCV2实现图像的几何变换(平移、镜像、缩放、旋转、仿射)
2019/05/13 Python
python和mysql交互操作实例详解【基于pymysql库】
2019/06/04 Python
django 通过URL访问上传的文件方法
2019/07/28 Python
使用分层画布来优化HTML5渲染的教程
2015/05/08 HTML / CSS
美国第一大药店连锁机构:Walgreens(沃尔格林)
2019/10/10 全球购物
办公室前台的岗位职责
2013/12/20 职场文书
军训生自我鉴定范文
2013/12/27 职场文书
清洁工表扬信
2014/01/08 职场文书
幼儿园教师个人反思
2014/01/30 职场文书
培训讲师岗位职责
2014/04/13 职场文书
习近平在党的群众路线教育实践活动总结大会上的讲话全文
2014/10/25 职场文书
党员教师群众路线思想汇报范文
2014/10/28 职场文书
学校工会工作总结2015
2015/05/19 职场文书
2016年感恩母亲节活动总结
2016/04/01 职场文书
USB TYPE-C 或将成为所有智能手机充电标准
2022/04/21 数码科技