如何使这个jquery函数可重用?

发布于 2024-08-27 10:10:35 字数 2301 浏览 5 评论 0原文

海这是我的 jquery 函数,

function getRecordspage(curPage, pagSize) {
    $.ajax({
        type: "POST",
        url: "Default.aspx/GetRecords",
        data: "{'currentPage':" + curPage + ",'pagesize':" + pagSize + "}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(jsonObj) {
            var strarr = jsonObj.d.split('##');
            var jsob = jQuery.parseJSON(strarr[0]);
            $.each(jsob.Table, function(i, employee) {
                $('<div class="resultsdiv"><br /><span class="resultName">' + employee.Emp_Name + '</span><span class="resultfields" style="padding-left:100px;">Category&nbsp;:</span>&nbsp;<span class="resultfieldvalues">' + employee.Desig_Name + '</span><br /><br /><span id="SalaryBasis" class="resultfields">Salary Basis&nbsp;:</span>&nbsp;<span class="resultfieldvalues">' + employee.SalaryBasis + '</span><span class="resultfields" style="padding-left:25px;">Salary&nbsp;:</span>&nbsp;<span class="resultfieldvalues">' + employee.FixedSalary + '</span><span style="font-size:110%;font-weight:bolder;padding-left:25px;">Address&nbsp;:</span>&nbsp;<span class="resultfieldvalues">' + employee.Address + '</span></div>').appendTo('#ResultsDiv');
            });
            $(".resultsdiv:even").addClass("resultseven");
            $(".resultsdiv").hover(function() {
                $(this).addClass("resultshover");
            }, function() {
                $(this).removeClass("resultshover");
            });
        }
    });
}

在我的页面中我有这个 jquery 脚本,

$("#lnkbtn0").click(function() {
                 getRecordspage(1, 5)
            });

并且我的页面有

1< br> 2
3
4

如何让其他链接按钮使用 diff curPage 参数调用此函数...

Hai this is my jquery function,

function getRecordspage(curPage, pagSize) {
    $.ajax({
        type: "POST",
        url: "Default.aspx/GetRecords",
        data: "{'currentPage':" + curPage + ",'pagesize':" + pagSize + "}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(jsonObj) {
            var strarr = jsonObj.d.split('##');
            var jsob = jQuery.parseJSON(strarr[0]);
            $.each(jsob.Table, function(i, employee) {
                $('<div class="resultsdiv"><br /><span class="resultName">' + employee.Emp_Name + '</span><span class="resultfields" style="padding-left:100px;">Category :</span> <span class="resultfieldvalues">' + employee.Desig_Name + '</span><br /><br /><span id="SalaryBasis" class="resultfields">Salary Basis :</span> <span class="resultfieldvalues">' + employee.SalaryBasis + '</span><span class="resultfields" style="padding-left:25px;">Salary :</span> <span class="resultfieldvalues">' + employee.FixedSalary + '</span><span style="font-size:110%;font-weight:bolder;padding-left:25px;">Address :</span> <span class="resultfieldvalues">' + employee.Address + '</span></div>').appendTo('#ResultsDiv');
            });
            $(".resultsdiv:even").addClass("resultseven");
            $(".resultsdiv").hover(function() {
                $(this).addClass("resultshover");
            }, function() {
                $(this).removeClass("resultshover");
            });
        }
    });
}

In my page i have this jquery script,

$("#lnkbtn0").click(function() {
                 getRecordspage(1, 5)
            });

And my page has

<a ID="lnkbtn0" class="page-numbers">1</a>
<a ID="lnkbtn1" class="page-numbers">2</a>
<a ID="lnkbtn2" class="page-numbers">3</a>
<a ID="lnkbtn3" class="page-numbers">4</a>

How to make other link buttons to call this function with diff curPage parameter...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

濫情▎り 2024-09-03 10:10:35

我认为您的意思是您想要应用 ID 以 linkbtn 开头的链接文本作为第一个参数:

$("a[id^=linkbtn]").click(function() {
    getRecordspage($(this).text(), 5);
    return false;
});

请参阅 http://api.jquery.com/attribute-starts-with-selector/

或者,您可以只使用类选择器:

$("a.page-numbers").click(function() {
    getRecordspage($(this).text(), 5);
    return false;
});

I think you mean you want to apply the text of links with ID starting with linkbtn as the first parameter:

$("a[id^=linkbtn]").click(function() {
    getRecordspage($(this).text(), 5);
    return false;
});

See http://api.jquery.com/attribute-starts-with-selector/

Alternatively, you could just use a class selector:

$("a.page-numbers").click(function() {
    getRecordspage($(this).text(), 5);
    return false;
});
秋日私语 2024-09-03 10:10:35

如果您不介意使用普通旧式 javascript,

<a ID="lnkbtn0" class="page-numbers" href="#" onclick="getRecordsPage(1,5)">1</a>
<a ID="lnkbtn1" class="page-numbers" href="#" onclick="getRecordsPage(2,5)">2</a>
<a ID="lnkbtn2" class="page-numbers" href="#" onclick="getRecordsPage(3,5)">3</a>
<a ID="lnkbtn3" class="page-numbers" href="#" onclick="getRecordsPage(4,5)">4</a>

请确保在 标记上使用 preventDefault

否则,如果你真的想使用 JQuery。

$("a[id^=linkbtn]").each(function() {
   $(this).click(function() {
       getRecordspage($(this).text(), 5);
    });
});

更新 使用建议的类选择器(如 karim79)。

If you don't mind using Plain old javascript

<a ID="lnkbtn0" class="page-numbers" href="#" onclick="getRecordsPage(1,5)">1</a>
<a ID="lnkbtn1" class="page-numbers" href="#" onclick="getRecordsPage(2,5)">2</a>
<a ID="lnkbtn2" class="page-numbers" href="#" onclick="getRecordsPage(3,5)">3</a>
<a ID="lnkbtn3" class="page-numbers" href="#" onclick="getRecordsPage(4,5)">4</a>

Make sure you preventDefault on the <a> tags.

Else, if you really want to go JQuery.

$("a[id^=linkbtn]").each(function() {
   $(this).click(function() {
       getRecordspage($(this).text(), 5);
    });
});

UPDATE Use class selectors (as karim79) suggested.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文