1

我有一个包含多个选项卡的网页,除了一些细微的差异外,它们基本上都做同样的事情。例如:

    <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、书籍标题、videoTitle电影的视频和电影标题。每个选项卡的后端看起来几乎相同,只是表单 ID 发生了变化。

    $('#isbn').keydown(function (e) { - for the books
     $('#platform').keydown(function (e) { - video games
    $('#Movieupc').keydown(function (e) { - for movies

所有功能基本相同,只是更改了表单字段的名称。有一个更好的方法吗?是否可以以某种方式使用javascript(可能是GetElementbyId?)所以我不必为每个选项卡写出每个函数?对于每个选项卡,我有大约 6 个不同的功能可以执行以及进行 ajax 调用。

4

1 回答 1

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(){} );
于 2012-10-23T19:33:59.087 回答