我正在尝试更改jquery选项卡中的链接文本但我得到空值。
$.fn.addEditorTab = function(name, tabName, contents) {
$('ul', this).append('<li title="' + name + '"><a href="#tab-' + name + '">' + tabName + '</a><span class="ui-icon ui-icon-close" role="presentation"></li>');
$(this).append("<div id='tab-" + name + "'><div id='editor-" + name + "' class='editor'></div></div>");
$(this).tabs("refresh");
var selectedTabTitle = $("a#fileTabs .ui-tabs-active").text();
alert(selectedTabTitle); // empty string
}
我知道我可以获得.ui-tabs-active文本,因为它会回来,但是#我认为它会获得锚标记,但看起来却没有。我不知道如何在选项卡中获取锚标记。
[编辑] 我已经能够做到以下但我不喜欢它:
var selectedTabTitle = $("#fileTabs .ui-tabs-active").text();
var selectedTabHtml = $("#fileTabs .ui-tabs-active").html();
$("#fileTabs .ui-tabs-active").html(selectedTabHtml.replace(">" + selectedTabTitle, ">*" + selectedTabTitle));
答案 0 :(得分:1)
根据你的代码。我看到你正在生成动态标签。
此元素$("a#fileTabs .ui-tabs-active")
不存在。
您的所有标签均未激活。
您需要先激活选项卡。
您可以使用此代码验证它是否存在活动选项卡
console.log($("a#fileTabs .ui-tabs-active").length)
<强>更新强>
更新了需求获取/设置/编辑的答案,以更改标签的元素文本而不更改其子元素