2014-09-09 3 views
-1

У меня есть HTML-страница внутри iframe на другой странице. На главной странице есть текстовая область для пользователя, чтобы изменить текст заголовка на странице внутри iframe. Я пытаюсь сделать так, чтобы пользователь мог ввести заголовок, который он хочет в текстовой области, и отобразить этот ввод в коде iframe html. То, что я не знаю, как использовать, вводит пользовательский ввод с одной страницы и вводит его на другую страницу. Любая помощь в том, как это сделать или точка в правильном направлении была бы полезнаИзмените html в Iframe, используя вход пользователей

+0

Они оба находятся в одном домене? – putvande

ответ

-1

Самый простой способ сделать это - передать параметр строки запроса со страницы 1 и перезагрузить источник используемого внутри него iframe. На другой странице введите параметр строки запроса и используйте его для изменения свойства элемента html.

Вот пример код:

Page 1:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title></title> 
    <script src="http://code.jquery.com/jquery-latest.min.js" 
     type="text/javascript"></script> 
</head> 
<body> 
    <h2>This is page 1</h2> 
    <input type="text" onchange="ChangeText(this);" /> 
    <iframe id="ifrm1" src="HtmlPage2.html"></iframe> 
    <script type="text/javascript"> 
     var originalUrl; 
     $().ready(function() { 
      originalUrl = $("#ifrm1").attr("src"); 
     }); 
     function ChangeText(obj) {    
      $("#ifrm1").attr("src", originalUrl + "?text=" + obj.value); 
     }   

    </script> 
</body>  
</html> 

Page 2:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title></title> 
    <script src="http://code.jquery.com/jquery-latest.min.js" 
     type="text/javascript"></script> 
</head> 
<body> 
    <h2>This is page 2</h2> 
    <input type="text" id="txt1" /> 
    <script type="text/javascript"> 
     $().ready(function() 
     { 
      var getText = getParameterByName("text"); 
      $("#txt1").val(getText); 
     }); 

     function getParameterByName(name) { 
      name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); 
      var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), 
       results = regex.exec(location.search); 
      return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); 
     } 

    </script> 
</body>  
</html> 

Надеется, что это помогает.

+0

Похоже, у кого-то не было шаров, чтобы дать объяснение, почему ответ был помечен. Трус. – DinoMyte

+0

Я отказался от этого смешного веб-сайта, теперь мне запрещено задавать какие-либо вопросы, потому что этот был отмечен без видимой причины. Однако, спасибо за ответ – user3385236

Смежные вопросы