从后面的代码执行JS功能(带参数)

时间:2019-07-18 08:17:21

标签: javascript c# asp.net

我正在处理一些代码,该代码可加载页面并选择所需的导航标签。这在.aspx文件中很好用,但是我不知道如何用后面的代码触发。

这是我要选择的元素

<li class="nav-item" runat="server">                    
  <a  class="nav-link" id="pills-request-tab" data-toggle="pill" href="#pills-request" role="tab" aria-controls="pills-request" aria-selected="false" onclick="OnTabChange(this)">Request</a>
</li>

JS代码


$(document).ready(function () {
    debugger;
    var tabName = $("#TabName").val() != "" ? $("#TabName").val() : "pills-home";
    $('.tab-content div').removeClass('active').removeClass('show');
    $('#' + tabName + '-tab').addClass('active');
    $('#' + tabName).addClass(' show active');
    if ($("#TabName").val() != "" && $("#TabName").val() != "1") {
        ("#pills-user-tab").addClass(' admin');
        ("#pills-holiday-tab").addClass(' admin');
        ("#pills-add-tab").addClass(' admin');
    }
});
function OnTabChange(currentTab) {
    if (currentTab != null)
        console.log(currentTab);
        $("#TabName").val(currentTab.id.replace('-tab', ''));
}

后面的代码

Page.ClientScript.RegisterStartupScript(this.GetType(), "pills-request-tab", OnTabChange(this), true);

我知道后面代码中的参数不是OnTabChange(this)。我想知道如何从后面的代码中传递对象。

1 个答案:

答案 0 :(得分:0)

您只需这样叫OnTabChange。只有this无法正常工作。您将需要传递一个字符串。

Page.ClientScript.RegisterStartupScript(this.GetType(), "pills-request-tab", "OnTabChange('tabID')", true);