基本的代码如下
复制代码 代码如下:
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
</title>
<script src="jquery-1.4.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
var text="test";
var t=new functionTest(text);
function functionTest(text)
{
var alertText=text
$("#btnSave").click(function (e) {
alertTestInnert();
});
this.AlertTest= function ()
{
alert(alertText);
}
function alertTestInnert()
{
alert(alertText);
}
}
function alertTestOuter()
{
alert(text);
}
</script>
<body>
<input type="button" id="btnSave" class="button" value="保存" />
<input type="button" id="btnCancel" class="button" value="取消" onclick="javascript:t.AlertTest;" />
</body>
</html>
再点击保存,取消时需要一定的操作,第一次的代码如上:
点击保存,根本没反应,很奇怪,这种最常用的jquery绑定事件竟然不起作用了。后来一比较才知道,其实自己忘了,绑定应该在$(document).ready(function () {})中进行;
js修改如下:
复制代码 代码如下:
var text="test";
$(document).ready(function () {
var t=new functionTest(text);
});
function functionTest(text)
{
var alertText=text
$("#btnSave").click(function (e) {
alertTestInnert();
});
this.AlertTest= function ()
{
alert(alertText);
}
function alertTestInnert()
{
alert(alertText);
}
}
function alertTestOuter()
{
alert(text);
}
修改后,点击保存可以了,而且正确的传递了参数,这样就可以保证在不同点的情况下传递不同的参数了。
但还有一种情况,页面会动态生成一些标签,这些标签的点击事件也需要处理。再次以取消按钮为例,由于是动态生成,就不能使用和保存一样的方法了。
只能使用onclick="javascript:t.AlertTest;"这种类似的绑定。于是有测试如下:
修改
复制代码 代码如下:
<input type="button" id="btnCancel" class="button" value="取消" onclick="javascript:t.AlertTest;" />
点击没反应,修改如下
复制代码 代码如下:
<input type="button" id="btnCancel" class="button" value="取消" onclick="javascript:alertTestOuter;" />
点击还是没反应,也没有错误,在修改如下:
复制代码 代码如下:
<input type="button" id="btnCancel" class="button" value="取消" onclick="javascript:alertTestOuter();" />
这次有反应了,看来是少了一对括号。修改为封装的方法如下:
复制代码 代码如下:
<input type="button" id="btnCancel" class="button" value="取消" onclick="javascript:t.AlertTest();" />
点击没反应,提示Uncaught ReferenceError: t is not defined
看来是变量t没有定义,作用域起作用了。于是修改js如下,也就是把变量t放到外边,赋值放在里边,就是如下:
复制代码 代码如下:
var t;
var text="test";
$(document).ready(function () {
t=new functionTest(text);
});
function functionTest(text)
{
var alertText=text
$("#btnSave").click(function (e) {
alertTestInnert();
});
this.AlertTest= function ()
{
alert(alertText);
}
function alertTestInnert()
{
alert(alertText);
}
}
function alertTestOuter()
{
alert(text);
}
最后一步,如何给取消调用的方法传递参数?
第一步修改js如下,也就是把取消调用的函数改为需要传递参数的方法,代码如下:
复制代码 代码如下:
var t;
var text="test";
$(document).ready(function () {
t=new functionTest(text);
});
function functionTest(text)
{
var alertText=text
$("#btnSave").click(function (e) {
alertTestInnert();
});
this.AlertTest= function (text)
{
alert(text);
}
function alertTestInnert()
{
alert(alertText);
}
}
function alertTestOuter()
{
alert(text);
}
相应的html修改如下:
复制代码 代码如下:
<input type="button" id="btnCancel" class="button" value="取消" onclick="javascript:t.AlertTest('124');" />
点击,看看是不是正确的传递了参数,一切正常,看来这样就完成了。
最后整理js代码:
把通用的js代码放到一个js文件里,这里放到了common.js中,不同的代码放在htm中,修改后的所有代码如下:
复制代码 代码如下:
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
</title>
<script src="jquery-1.4.4.min.js" type="text/javascript"></script>
<script src="common.js" type="text/javascript"></script>
<script type="text/javascript">
var t;//需要定义的外边,否则点击取消时,不能访问到变量t
var text="test"; //传递的参数
$(document).ready(function () {
t=new functionTest(text); //给t赋值,定义不能放在这里边
});
</script>
<body>
<input type="button" id="btnSave" class="button" value="保存" />
<input type="button" id="btnCancel" class="button" value="取消" onclick="javascript:t.AlertTest('124');" />
</body>
</html>
common.js的代码:
复制代码 代码如下:
function functionTest(text)
{
var alertText=text
$("#btnSave").click(function (e) {
alertTestInnert();
});
this.AlertTest= function (text)
{
alert(text);
}
function alertTestInnert()
{
alert(alertText);
}
}
相关推荐:
SEO快速优化技术:助力网站流量暴增,轻松登顶搜索引擎,铜陵ai全网通推广软件
SEO中的别类词:提升排名,轻松超越竞争对手,ai插画生肖
优化综合:引领高效发展的智慧之道,电影营销的推广方式
ChatGPT免费用户每天的使用限制:如何高效利用,突破困境!,花花制作ai
ChatGPT无法加载?检查您的网络设置并尝试重启,轻松解决连接问题!,ai制作艺术字
SEO任何:如何通过精准优化让网站流量突破极限,太原网站建设培训班
SEO通过-如何通过SEO优化让你的业务在搜索引擎中脱颖而出,保定网站建设推广专家
SEO挣钱之道:如何通过SEO实现网络盈利,宁晋网站建设商家
SEO做网站点击:提升网站流量的关键策略,国内ai写作论文
GPT-3.5可以免费使用吗?AI未来的无限可能,ai烧猪
SEO观看:如何通过优化提升您的网站流量和品牌影响力,龙里网络营销推广
seo灰帽是什么,灰帽是指什么 ,ai绘画六边形
SEO售产-数字营销新战场,助力企业实现盈利增长,去哪找自贡网站建设
AI代谢文章:从灵感到成果的创作革命
好用的AI写作软件,让创作更高效
seo要公司什么资源,做seo需要用到什么软件 ,ai明星换了
pbootcms前端翻译插件-轻松实现网站多语言支持,拓展全球市场,st ai绘画
未来智能:AI智能人工软件引领数字化变革
GPT人工智能-让未来触手可及的智慧之光,ai头花写真
AI文章比对技术:引领写作与内容审核的新革命,ai智能写作小说免费
SEO优化的利器:提升网站排名的秘密武器,联想ai7g-3笔记本
AI智能工具的无限可能:未来已来,你准备好了吗?
AI免费生成文字,打造创作新时代
SEO才能:提升网站排名,突破网络营销的核心竞争力,南宁本地seo营销公司
seo需要什么人才,seo需要做什么工作 ,探索ai照片
SEO教育:搜索引擎优化,开启成功职业之路,搜狗SEO排名接单
seo软文有什么作用,seo文案是什么 ,斐乐Ai测评问题
SEO而且:打造高效网站流量增长的秘密武器,滨江网站推广营销
AI人物生成:重新定义虚拟形象创作的未来
“收录量为1”,打造数字化时代的独特竞争力,网站建设页面制作流程
优化文字,让表达更精准:提升写作效率的关键,个人网站建设外包
SEO查看-如何通过精确分析提升网站流量与排名,东丽网站建设价格
AI一键生成文章,写作新境界
文章AI生成标题:让创作更轻松,内容更精彩
什么是seo伪原创,seo就业前景伪原创怎么写 ,头像ai画怎么弄
SEO门户:打造高效网站流量的关键利器,创意网站建设要求
ChatGPT为什么网址打不开?原因分析与解决方法,文档审核ai
SEO是如何推动企业增长的关键力量,深圳罗湖网站建设设计
SEO注意事项:助力网站流量提升的关键策略,济宁快速seo优化价格
Chatttst:开启智能沟通新时代的无限可能,上海联通ai
SEO外包:提升网站排名与品牌曝光的最佳选择,大创建设网站
如何利用AI生成高质量文章,提升写作效率与创意?
SEO功能:助力网站流量提升与品牌曝光,天津公司网站建设与维护
为什么选择老域名工具?提升网站SEO与品牌影响力的秘密武器,软文与seo文章区别
AI生成文章免费工具,让创作变得轻松又高效,ai安心健
二创AI:打破创意壁垒,引领未来内容创作新潮流,背影教案网站建设游戏
SEO导流:如何通过精准优化实现网站流量大爆发,网站优化优化怎么做
什么是seo手段,seo的具体手段 ,中国ai 企业
目前AI软件有哪些?智能新时代的必备工具
为什么说seo这么重要,seo重要吗 ,ai19920403