微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

调试 ASP.NET MVC Kendo TabStrip

如何解决调试 ASP.NET MVC Kendo TabStrip

我有一个Kendo TabStrip

@(Html.Kendo().TabStrip()
    .Name("tabstrip")
    .Events(e => e.Select("onTabSelect"))
    .Items(tabstrip =>
    {
        tabstrip.Add().Text("Tab 1")
            .Selected(true)
            .Content(@<text>
                <div class="panel-heading">
                    <h3 class="panel-title">Tab 1</h3>
                </div>
            </text>);
        tabstrip.Add().Text("Tab 2")
            .Content(@<text>
                <div class="panel-heading">
                    <h3 class="panel-title">Tab 2</h3>
                </div>
            </text>);
        tabstrip.Add().Text("Tab 3")
            .Content(@<text>
                <div class="panel-heading">
                    <h3 class="panel-title">Tab 3</h3>
                </div>
            </text>);
        tabstrip.Add().Text("Tab 4")
            .Content(@<text>
                <div class="panel-heading">
                    <h3 class="panel-title">Tab 4</h3>
                </div>
            </text>);
    })
)

The jQuery below fires whenever one of the tabs is selected:

function onTabSelect(e) {
    var tab = $(e.item).find("> k-link");
    if (tab !== null) {
        console.log(tab);
        var tabText = tab.text();
        console.log(tabText);
        if (tabText == "Tab 1") {
            // 
        } else if (tabText == "Tab 2") {
            alert('Tab 2');
        } else if (tabText == "Tab 3") {
            alert('Tab 3');
        } else if (tabText == "Tab 4") {
            alert('Tab 4');
        }
    }
};

调用 alert() 框,因此我正在 Chrome 调试器中使用两 (2) 个 console.log 消息进行调试。

下面显示了四 (4) 个 控制台写入行,我选择了“Tab 2”,然后选择了“Tab 3”。第一个有数据(为截图而展开),第二个没有,第三个有数据,第四个没有

screenshot of both

第一条 console.log 消息包含我需要的所有内容,但我不知道如何获取

第二个 console.log 显示我尝试使用 var tabText = tab.text(); 读取文本,但返回为 null。

我不知道如何复制和粘贴整个文本,但可以展开第一条消息以显示 context: li.k-item.k-state-default 及其下的一长串属性

screenshot of li.k-item

如果我可以向下滚动到足够远,您会看到我将 innerText 项目设置为我需要阅读的内容

我尝试使用此方法深入研究 context

function onTabSelect(e) {
    var tab = $(e.item).find("> k-link");
    if (tab !== null) {
        console.log(tab);
        var context = tab.context;
        console.log(context);
        var contextText = context.text;
        console.log('context text = ' + contextText);
        var tabText = tab.text();
        console.log('tabText = ' + tabText);

上面的额外日志输出

extra logging screen

我可以在 context 项中看到“Tab 2”,但如何在 jQuery 中读取它?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。