2012-04-09 57 views
0

要实现一个多语言的网站,我有使用XML和jQuery的想法。每种语言的一个xml文件,充当所有网站标签的持有者。我创建了一个名为“nl.xml”测试XML文件:jQuery的XML多语言的想法

<?xml version="1.0" encoding="UTF-8"?> 
<resource> 
<language name="nl"> 
<label id="yes">ja</label> 
<label id="no">nee</label> 
</language> 
</resource> 

我创建了一个HTML文件以下JavaScript:

<html> 
    <head> 
    <title></title> 
    <script src="jquery-1.4.4.min.js"></script> 
    <script type="text/javascript" language="javascript"> 
    $(function() {  
    var language = 'nl';  
    $.ajax({   
    url: 'nl.xml',   
    success: function(xml) {    
    $(xml).find('label').each(function(){ 
    var id = $(this).attr('id'); 
    var text = $(this).find(label).text(); 
    $("." + id).html(text);    
    });   
     }  
    }); 
    }); 
    </script> 
    </head> 

,并希望看到的值:

'div class="no">no</div>' 
'div class="yes">yes</div>' 

每个DIV这也分布在两个不同的文件改变,但需要 一些建议得到这个工作更好,因为这个当前的代码不工作。这个想法是访客下载xml文件,其中包含网站和网页的所有标签。

回答

0

你想要'看到每个div的值也分布在两个不同的文件中改变',你是什么意思?我真的不知道你的意思。

success: function(xml) {    
    $(xml).find('label').each(function(){ 
     var id = $(this).attr('id'); 
     var text = $(this).text(); 
     $('.some_element').append('<div class="'+id+'">'+text+'</div>');    
    });   
} 

这会发现在你的XML每<label id="">,它通过追加到一个特定的元素转换为您的文档中的<div class="">