2010-02-21 34 views
2

这是我的情况。我在页面上有10个链接。所以当用户点击这些链接时,必须发生相同的页面重新加载。Ajax重新加载相同的页面onclick

要清楚我有这样的事情。

<a href="test.php?name=one">one</a> | <a href="test.php?name=Two">Two</a> 

如果启用javascript,

的onclick,阿贾克斯负载必须发生。

如果javascript被禁用,那么上面应该可以工作。

基本上我使用“名称”来限制我的搜索页面的一些值。

回答

0

这里是你做了什么....

有一个<noscript>标签,可用于那些不会对浏览器的JavaScript谁也。

如果页面呈现<noscript>标记,则<a>点击应该正常运行,否则请调用ajax。

通常人们做的事情是写两次相同的页面,一个不包含javascript,另一个包含。

e.g

<script type="text/javascript"> 
    //Functions goes here... 
</script> 
<noscript> 
    <!-- redirection --> 
</noscript> 

更多<noscript>这里:http://xhtml.com/en/xhtml/reference/noscript/

UPDATE:使用以下DTD您的网页上。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

严格的DTD不支持<noscript>

+0

谢谢..我会研究它。但下面的代码是一些工作。 – user277891 2010-02-21 15:36:27

+0

PS。检查我的帖子,看看你需要使用什么DTD。对不起,以前没有收录它。 – 2010-02-21 20:42:35

+0

非常感谢..我想这可以帮助我轻松。我正在考虑做一些像Ajax加载onclick和重新加载,如果js禁用。因为如果js被禁用,jquery将不会被调用,“noscript”可能不是必需的吗? – user277891 2010-02-21 23:36:46

2

连接单击处理程序到你的链接不显眼:

$(function() { 
    $('a').click(function() { 
     // resultContainer is the id of some element that will receive 
     // the HTML from the link 
     $('#resultContainer').load(this.href); 
     return false; 
    }); 
}); 

如果JavaScript被禁用的链接将执行标准的请求重新加载整个页面。

+0

这是有点工作..但它是打印链接两次。如何避免这一点..非常感谢... – user277891 2010-02-21 15:35:11