2016-02-27 1 views
3

спасибо за ваше время, это мой первый пост здесь :)пытаются загрузить HTML с скриптом на него в другой странице

так у меня есть сценарий, который хорошо работает, вот мой page1.html упрощена:

<html> 
<head> 
    <script type="text/javascript" src="js/jquery-1.6.4.min.js"></script> 
    <script> 
    var lang = "en"; 
    $(function(){ 
     $("#morelink").load("page2.html"); 
    }); 
    </script> 
</head> 
<body> 
    <div id="morelink"></div> 
</body> 
</html> 

здесь мой page2.html упрощена, это добавить в мою страницу 1:

<div>  
    <a href="model_1_'+lang+'.html"> 
     <img src="image1.png" /> 
    </a> 
    <a href="model_2_'+lang+'.html"> 
     <img src="image2.png" /> 
    </a> 
    <a href="model_3_'+lang+'.html"> 
     <img src="image3.png" /> 
    </a> 
</div> 

нагрузка работает хорошо, но это не работает, потому что, когда я нажимаю на ссылку должен дать мне ссылку с :

model_3_en.html 

, но он дал мне:

model_3_'+lang+'.html 

почему вар LANG = "EN" не работают?

+1

, потому что его не определен на 'page2.html' – roullie

+0

Сервер ничего не знает о' вар LANG = «en»; ' –

+0

@roullie. Но page2.html загружается в div главной страницы, где мы можем получить доступ к переменной' lan' –

ответ

0

Вы должны установить атрибут своего якоря href динамически после процесса загрузки нового содержимого страницы.

Попробуйте изменить ваш page2.html, как показано ниже,

<div>  
    <a data-link="model_1_"> 
     <img src="image1.png" /> 
    </a> 
    <a data-link="model_2_"> 
     <img src="image2.png" /> 
    </a> 
    <a data-link="model_3_"> 
     <img src="image3.png" /> 
    </a> 
</div> 

И ваш сценарий, как показано ниже,

var lang = "en"; 
$(function(){ 
    $("#morelink").load("page2.html",function(){ 
     $("#morelink a[data-link]").attr("href", function(){ 
      return $(this).data("link") + lang + ".html"; 
     }); 
    }); 
}); 
+0

работа !! Спасибо чувак !! – iceman