2015-03-30 4 views
0

У меня есть 3 html-страницы. main.html, page1.html и page2.html. Я показываю page1.html, page2.html в main.html, используя следующий код.Нужен способ отключить HTML-код по запросу

main.html

<html> 
    <head> 
     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script> 
     <script src="myjs.js"></script> 
    </head> 
    <iframe id="page_1" src="page1.html"></iframe> 
    <iframe id="page_2" src="page2.html"></iframe> 
</html> 

page1.html

<html> 
    <body> 
     <table id="resultDetails"> 
       <th>Result Details</th> 
       <tr> 
        <td>Row 1</td> 
        <div id="r1"> 
         <p> R1 data</p> 
        </div> 
       </tr> 
       <tr> 
        <td>Row 2</td> 
        <div id="r2">      
        </div> 
       </tr> 
     </table> 
    </body> 
</html> 

page2.html

<html> 
    <body> 
     <div id="myDiv"> 
       <p> Testing.... </p> 
     </div> 
    </body> 
</html> 

myjs.js

$(window).on('load',function() { 
    $('#page_1').contents().bind('click','tr', function() { 
     $('#page_2').contents().find('#myDiv').html($('#page_1').contents().find('#r1').html()) 
    }); 
}); 

При нажатии на строке 1 page1, содержание сНу ид = "r1" будет отображаться в page2. Это не проблема.

Проблема. Если для конкретной строки нет данных (например, div id = "r2"), я хочу скрыть кадр страницы2. Как мы можем это достичь?

Любые мысли

+1

Я бы сказал, избегать использования iframe, вы будете иметь дело с проблемами IE и проблемы с кешем, эта вещь может быть выполнена очень легко с помощью 'jQuery' или лучше с помощью' Angular' – Saqueib

+0

Не совсем понятно, что скрывают/показывают правила – charlietfl

+0

Я просто хочу код или процедуру скрыть фрейм – user1502919

ответ

0

Моя мысль об этом:

Возьмите идентификатор для строки, которую вы пытаетесь получить доступ. Перед показом данных проверьте наличие или отсутствие данных

$("trid").innerhtml='' 

а затем выполните свое действие. Надеюсь, это поможет.

+0

код недействителен, и даже если бы он не ответил на вопрос – charlietfl

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