2012-03-01 121 views
0

下不起作用:jQuery UI的變化選項卡中選擇標籤文本

$("#tabs").tabs("option", "selected").text('Logout'); 

既不是

$("#tabs").tabs("option", "selected").text()='Logout'; 

錯誤:

$("#tabs").tabs("option", "selected").text is not a function 

如何更改的文本請選擇標籤?

回答

1

的代碼使用的是返回所選標籤的整數值。它不是一個有text()方法的對象。你將不得不做這樣的事情:

var selectedTab = $("#tabs").tabs("option", "selected"); 
$("#tabs ul li a").eq(selectedTab).text("your text"); 

文檔在這裏 - http://jqueryui.com/demos/tabs/#option-selected

示例代碼在這裏 - http://jsbin.com/ohogey/edit#javascript,html

希望這有助於!

+0

感謝您的解釋!我會明天嘗試你的方法! – Elen 2012-03-01 22:26:31

+0

這正是我需要的,謝謝! – Elen 2012-03-02 11:07:48

1

您將需要在jQuery Tabs元素上使用select事件。在函數內部找到你的DOM元素並改變innerText值。

$(".selector").tabs({ 
    select: function(event, ui) { ... } 
}); 
+0

仍然不清楚text()函數錯誤是如何被糾正的?... – Elen 2012-03-01 17:54:42

+0

請參閱下面的@hope_is_grim答案,您得到的值是一個整數,而不是頁面中的DOM元素,因此,沒有text()屬性。 – bdparrish 2012-03-01 18:04:59

+0

現在明白!謝謝 – Elen 2012-03-01 22:25:05

1
$("#tabs").tabs("option", "selected") 

返回所選擇的選項卡ID。
如果你想選擇時,改變標籤的標題,
你可以做這樣的

$('#tabs').tabs({ 
    select: function(e, ui) { 
    $(ui.tab).text('someText'); 
    } 
}); 
+0

哦,我現在看到=))我現在得到的問題是,儘管登錄腳本只運行一次,但它會將名稱更改爲_every_選項卡的「註銷」選項卡! – Elen 2012-03-01 22:24:31

相關問題