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 相关文章推荐
利用json获取字符出现次数的代码
Mar 22 Javascript
js关闭浏览器窗口及检查浏览器关闭事件
Sep 03 Javascript
BootStrap的弹出框(Popover)支持鼠标移到弹出层上弹窗层不隐藏的原因及解决办法
Apr 03 Javascript
AngularJS实现树形结构(ztree)菜单示例代码
Sep 18 Javascript
angular.js 路由及页面传参示例
Feb 24 Javascript
vue+iview+less+echarts实战项目总结
Feb 22 Javascript
了解Javascript中函数作为对象的魅力
Jun 19 Javascript
JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
Jul 11 jQuery
JavaScript 双向链表操作实例分析【创建、增加、查找、删除等】
Apr 28 Javascript
js+audio实现音乐播放器
Sep 13 Javascript
浅谈js数组splice删除某个元素爬坑
Oct 14 Javascript
JS前端可视化canvas动画原理及其推导实现
Aug 05 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
example2.php
2006/10/09 PHP
说明的比较细的php 正则学习实例
2008/07/30 PHP
PHP get_html_translation_table()函数用法讲解
2019/02/16 PHP
Aster vs KG BO3 第二场2.18
2021/03/10 DOTA
[对联广告] JS脚本类
2006/08/27 Javascript
web前端开发也需要日志
2010/12/09 Javascript
jQuery实现首页图片淡入淡出效果的方法
2015/06/10 Javascript
JS中产生标识符方式的演变
2015/06/12 Javascript
动态加载js、css的实例代码
2016/05/26 Javascript
AngularJS变量及过滤器Filter用法分析
2016/11/22 Javascript
使用vue构建移动应用实战代码
2017/08/02 Javascript
JavaScript实现简单图片轮播效果
2017/08/21 Javascript
vue router使用query和params传参的使用和区别
2017/11/13 Javascript
微信小程序使用image组件显示图片的方法【附源码下载】
2017/12/08 Javascript
vue中阻止click事件冒泡,防止触发另一个事件的方法
2018/02/08 Javascript
前端axios下载excel文件(二进制)的处理方法
2018/07/31 Javascript
Antd下拉选择,自动匹配功能的实现
2020/10/24 Javascript
[02:37]2015国际邀请赛选手档案—LGD.Xiao8
2015/07/28 DOTA
[01:34]DAC2018主赛事第四日五佳镜头 Gh巨牙海民助Miracle-死里逃生
2018/04/07 DOTA
Python3.2中的字符串函数学习总结
2015/04/23 Python
python+selenium识别验证码并登录的示例代码
2017/12/21 Python
Python中的 ansible 动态Inventory 脚本
2020/01/19 Python
Python 开发工具通过 agent 代理使用的方法
2020/09/27 Python
Pycharm如何自动生成头文件注释
2020/11/14 Python
html5录音功能实战示例
2019/03/25 HTML / CSS
详解移动端h5页面根据屏幕适配的四种方案
2020/04/15 HTML / CSS
June Jacobs尊积帕官网:知名的spa水疗护肤品牌
2019/03/21 全球购物
毕业生自荐书
2014/02/02 职场文书
无刑事犯罪记录证明
2014/09/18 职场文书
大学生党员批评与自我批评
2014/09/28 职场文书
大班上学期个人总结
2015/02/13 职场文书
话题作文之诚信
2019/11/28 职场文书
python使用pywinauto驱动微信客户端实现公众号爬虫
2021/05/19 Python
Python语言内置数据类型
2022/02/24 Python
Win10鼠标轨迹怎么开 Win10显示鼠标轨迹方法
2022/04/06 数码科技
JS前端宏任务微任务及Event Loop使用详解
2022/07/23 Javascript