我有一个包含多个标签的网页,除了一些细微差别之外,它们都基本相同。例如:
<div id="tabs-1">
<form id="buybackForm">...
<div id="tabs-2"><!--Video Games-->
<form id="buybackFormVideoGames">....
<div id="tabs-3"><!--Movies -->
<form id="buybackFormMovies">
等。每个标签用于获取书籍,视频游戏,电影等信息。表格是相同的,除了让表格工作我必须更改每个标签的ID,书籍的标题,视频的视频标题和电影的电影标题。每个选项卡的后端看起来几乎相同,只更改了表单ID。
$('#isbn').keydown(function (e) { - for the books
$('#platform').keydown(function (e) { - video games
$('#Movieupc').keydown(function (e) { - for movies
所有功能与更改的表单字段的名称基本相同。有一个更好的方法吗?是否有可能以某种方式使用javascript(GetElementbyId可能?)所以我不必为每个标签写出每个函数?对于每个选项卡,我有大约6个不同的函数来执行以及进行ajax调用。
答案 0 :(得分:2)
您可以使用命名函数
function myFunction(){ }
$('#isbn').keydown(myFunction);
$('#platform').keydown(myFunction);
$('#Movieupc').keydown(myFunction);
或者在所有元素上使用公共类。
$('.myCommonClass').keydown(function (e) { });
如果它们是动态的,并且你是jQuery 1.7+,那么我们可以on
。
$(document).on("keydown", ".myCommonClass", function(){} );