js给onclick事件赋值,动态传参数实例解说

我们先看看错误的例子
Html代码


代码如下:

<body>
<input id="certid" type="text" value="123456" >
<input id="btn" type="button" value="button" onclick="">
</body>

Javascript代码


代码如下:

<script>
function show(value)
{
alert(value);
}

btn.onclick = show(certid.value);
<script>

以上代码执行起来是有错误的,因为show(certid.value)这句,直接就执行了show方法,而没有正确把这个方法对象赋给btn.onclick事件.
如果我们改成这样


代码如下:

btn.onclick = show;

参数又无法传递.
所以正确的代码应该这样写,我们加一个参数以看得更明白一些:
Html代码


代码如下:

<body>
<input id="certid" type="text" value="123456" >
<input id="btn" type="button" value="button" onclick="">
</body>

Javascript代码


代码如下:

<script>
function show(value1,value2)
{
alert(value1+","+value2);
}

var i = 10;
btn.onclick = function(){
show(certid.value,i);
};
<script>

这样就实现了动态给onclick事件句柄赋值,并支持参数的传递.

(0)

相关推荐

  • url 编码 js url传参中文乱码解决方案

    1.配置文件web.config中 在节中加上整个网站的编码方式. <globalization fileEncoding="GB2312" requestEncoding="GB2312" responseEncoding="GB2312"/> 这样参数就以gb2312的中文编码方式传输了.而一般默认是utf-8. 2.在传参是先编码在传输,接受时先编码,在接收. string mm=Server.URLEncode(你); Res

  • JS传参及动态修改页面布局

    一个关于JS传参及动态修改页面布局的简单小例子. 效果图: HTML: <!DOCTYPE HTML> <html> <head> <meta charset="utf-8" /> <title></title> <link rel="stylesheet" href="css/style.css" rel="external nofollow" /

  • 纯js实现瀑布流布局及ajax动态新增数据

    本文用纯js代码手写一个瀑布流网页效果,初步实现一个基本的瀑布流布局,以及滚动到底部后模拟ajax数据加载新图片功能. 缺点: 1. 程序不是响应式,不能实时调整页面宽度: 2. 程序中当新增ajax模拟数据图片后,是将整个页面的所有图片都重新定位一次. 3. 程序是等所有图片加载完成后再读取图片的尺寸,实际中肯定不能这样做. 4. 实际项目中,应该由后台程序给出图片尺寸值,在js代码中直接使用图片的width属性. 本程序思路: html结构: <body> <div id="

  • 用js通过url传参把数据从一个页面传到另一个页面

    用js把数据从一个页面传到另一个页面的层里? 如果是传到新页面的话,你网站基于什么语言开发直接用get或者post获取,然后输出到这个层 通过url传参 如果是HTML页面的话JS传到新页面就window.location.href='a.html?id=100';然后a.html页面的JS就<div id="s"></div> <script> document.getElementById("s").innerHTML=win

  • js设置function参数默认值(适合没有传参情况)

    今天写一个div+css模拟js信息框的类库时遇到一个问题,我希望当我没有传递参数过去时自动使用"提示信息"作为窗口标题.我试着这样写 复制代码 代码如下: function MessageBox(title=""){ } 毫无疑问我运行失败了(要不然我也不会发这博文了) 最后经过一番百度,发现了这么个好东西 复制代码 代码如下: function test(a){ var b=arguments[0]?arguments[0]:50; return a+':'+b

  • 给js文件传参数(详解)

    一.利用全局变量 这是最简单的一种方式,比如Google Adsense: 复制代码 代码如下: <script type="text/javascript"> google_ad_client ='pub-3741595817388494'; </script> <script type="text/javascript" src="http://pagead2. googlesyndication.com/pagead/s

  • js给onclick事件赋值,动态传参数实例解说

    我们先看看错误的例子 Html代码 复制代码 代码如下: <body> <input id="certid" type="text" value="123456" > <input id="btn" type="button" value="button" onclick=""> </body> Javascript代码

  • JS基于onclick事件实现单个按钮的编辑与保存功能示例

    本文实例讲述了JS基于onclick事件实现单个按钮的编辑与保存功能.分享给大家供大家参考,具体如下: 该实例可以实现点击同一个按钮实现编辑和保存的功能: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv=&q

  • JS函数arguments数组获得实际传参数个数的实现方法

    JS与PHP在函数传参方面有点不同,PHP形参与实参个数要匹配,而JS就灵活多了,可以随意传参,实参比形参少或多都不会报错. 实参比形参多不会报错 function say(a){ alert(a); } say('琼台博客','WEB技术博客'); 执行结果 我们再来看看形参比实参多的结果 function say(a,b){ alert('a 的值是 '+a+'\nb 的值是 '+b); } say('琼台博客'); 执行结果 a 对应第一个实参"琼台博客",b 没有对应的实参所以

  • 微信小程序 动态传参实例详解

    微信小程序 动态传参实例详解 在微信小程序的开发过程中经常会用到动态传参,比如根据某一页面传参的不同,加载不同的新的页面.接下来介绍下如何实现. 上一篇博客中介绍了如何用wx:for循环显示数组,一般情况下我们要实现的功能是点击不同的元素进入不同的页面,比如在另一个页面加载某个元素的详细信息. 跳转这里采用navigator跳转,在navigator跳转的链接上将参数加上去: index.wxml(根据点击页面的不同传递参数) <view class="item" wx:for=

  • js动态添加事件并可传参数示例代码

    复制代码 代码如下: var tt=function(obj) { return function() { alert(obj.tagName); //可以为外部定义的一个执行函数: } } function addfunction() { var bigobj=document.getElementById("mytable"); var rows =bigobj.rows; for(var j=0; j<rows.length; j++) { for(var i=0;i<

  • 利用Js+Css实现折纸动态导航效果实例源码

    先来看看第一种实现方式 效果图如下: 不再采用ul li的布局方式 -webkit-transform-style:preserve-3d只对子元素有作用,所以每个div都加. 实例源码 <!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> <style> .wrap{margin:30px auto;widt

  • JS中touchstart事件与click事件冲突的解决方法

    前言 移动互联网是未来的发展趋势,现在国内很多互联网大佬都在争取移动这一块大饼,如微信及支付宝是目前比较成功的例子,当然还有各种APP和web运用. 下面这篇文章主要介绍了关于JS中touchstart事件与click事件冲突解决的相关内容,下面话不多说了,来一起看看详细的介绍吧. 一 · 业务场景的描述 在对已完成的PC站点进行移动端适配时,我们想要站点在移动设备上有更快的响应速度,以带给用户更好的体验,此时,我们应该使用移动设备专用的事件系统,例如,使用 touchstart 事件代替 cl

  • TP3.2.3框架文件上传操作实例详解

    本文实例讲述了TP3.2.3框架文件上传操作.分享给大家供大家参考,具体如下: 上传表单 在ThinkPHP中使用上传功能无需进行特别处理.例如,下面是一个带有附件上传的表单提交: <form action="__URL__/upload" enctype="multipart/form-data" method="post" > <input type="text" name="name"

  • js动态添加的DIV中的onclick事件简单实例

    最简单的是这样: <input type="button" onclick="alert(this.value)" value="我是 button" /> 动态添加onclick事件: <input type="button" value="我是 button" id="bu"> <script type="text/javascript&quo

  • js onclick事件传参讲解

    1.在页面中给方法传参数有两种方法 第一:onclick=cancel(id,patientId); 在js文件中定义cancel方法 如果要把当前对象传过去用onclick="cancel(this,id,patientId)" js中cancel(obj,id,patientId) 第二:在js中用jquery$(function(){ var patientId=$("a").attr("patientId"); }),在页面中<tr

随机推荐