2009-06-02 91 views
3

每当我用Ajax将页面加载到页面上时,我将页面<title>设置为“My Blog - BLOGPOST_TITLE”。如何悄悄地更新页面标题与JS(在Rails中)

当然,“我的博客 - ”也出现在我的应用程序布局中。

问题是,如何在不在我的代码中复制字符串的情况下告诉我关于字符串“我的博客 - ”的Javascript?

回答

7

在将Ajax发送到服务器存储document.title值(“我的博客”)之前给某个变量。 后来,当响应到达设置document.title时document.title时+ ' - ' + BLOGPOST_TITLE

所以你必须在HTML:

... < title>我的博客</TITLE> ...

和JS:

 
var TITLE = document.title; 

function getBlogSpotEntry() { 
    Ajax.Request(url, { 
    onSuccess: function(response) { 
     var entryTitle = getTitle(response.responseText); 

     document.title = TITLE + " - " + entryTitle; 
    } 
    }) 
} 
+0

这是行不通的 - 我的博客的标题是从来没有“我的博客”。我总是显示帖子,所以它始终是“我的博客 - BLOGPOST_TITLE”。我可以拆分“ - ”或其他东西,但这是一个黑客(如果“ - ”发生了变化)。 – 2009-06-02 15:13:53

1

我会走这条路(肮脏,但效果很好):

document.myTitlePrefix = 'My Blog - ' 

,然后更新标题作为

document.title = document.myTitlePrefix + blogPostTitle