js 动态添加的按钮 onclick事件怎么写?

JavaScript027

js 动态添加的按钮 onclick事件怎么写?,第1张

如图,比方说我有一个函数,而我们需要点击按钮触发指定的函数,这就用到了绑定事件的方法。

如图,假定是点击事件,则在按钮里面添加onclick=函数名即可把函数绑定到按钮上。onclick绑定的是单击事件哦,当然还有很多其他的事件。

如图,绑定事件之后,当我们点击按钮即可触发绑定的函数,非常神奇哦。

当然,也可以给按钮设定一个ID,然后我们获取到带有ID的按钮。

然后在JavaScript中绑定事件也是可以的,这种方法代码比较多,想用哪种看你自己哦。

需要特别注意一点的是,如果用了第二种方法,当要获取id时,如果script脚本写在head里面,则要加上window.onload哦。如果是写在body后面,则不需要写window.onload。

可以用js的事件委托啊。

比如你的分页生成的代码会插入到一个<div id="pager"></div>里,在生成html片段时为a设置一个属性用来表示页数,如:<a href="#" data-page="1">第1页</a>

事件委托的js代码如下:

$('#pager').delegate('a', 'click', function(e){

e.preventDefault() //阻止a的默认事件

var page = $(this).data('page') //从当前a标签属性中取出页码

//处理分页,如果是跳转:

location.href = "/pagename.php?page=" + page

//如果是异步取分页数据:

var page_api = '/pagedata.php?page=' + page

$.get(page_api, function(data, textStatus, jqXHR){

//使用ajax获取数据

//拼装数据并填充到数据显示区:

$('#list-container').append( createHTML(data) )

//重新生成分页区

createPager( page )

})

})

function createHTML(data){

//拼装数据的函数

}

function createPager(curPage){

//生成分页的函数

var tpl = '<a href="#" data-page="{#index}">第{#index}页</a>'

//...

}

在javascript中,可以为某个元素指定事件,指定的方式有以下三种:

1、在html中,使用onclick属性

2、在javascript中,使用onclick属性

(1)注意函数名没有双引号。

3、在javascipt中,使用addEvenListener()方法

三种方法的比较

(1)在第二、三种方法中,可以向函数传入一个event对象,并读取其相应属性,而方法一不可以。

一些语法细节

(1)在第一种方法中,onclick大小写无关,但在第二种方法中,必须使用小写。因为HMTL对大小写不敏感,而JS则会区分大小写。

(2)在第二、三种方法中,指定函数名时没有双引号,而第一种作为一个HTML属性,需要双引号。

(3)第一种方法需要括号,第二、三种不需要。

onclick="clickHandler()"

document.getElementById("jsOnClick").onclick = clickHandler2

document.getElementById("adEventListener").addEventListener("click",clickHandler2)