dongquan0024 2014-10-11 01:30
浏览 57
已采纳

以iframe为目标的网址的帖子显示在iframe的iframe中

This is a little bit confusing. I am trying to submit a url to an iframe on the same page. When I click submit, the iframe duplicates the current page, but the correct url is in the replicated iframe. I wonder if it goes on forever? The page that this is happening is http://www.4mobilesites.com and the code is below.

<div class="mobile-logo">
<H2>How does your website look on a Mobile Device?</h2>
<?php 
$keyurl = $_POST['siteurl'];
?>

<form method="post" target="mobileframe" >
Enter your website's URL: <input type="text" name="siteurl" value="http://" size="50"><br>
<input type="submit" value="VIEW">
</form><br>
<a name="iframe-1"></a>
<div class="theiframewrap"><iframe name="mobileframe" class="theiframeid" src="<?php echo "$keyurl"; ?>" id="mobileframe"></iframe></div></div>

If you submit a url in the form, then scroll down a bit in the iframe and squint, you will see the correct url in the iframe of the iframe.

  • 写回答

1条回答 默认 最新

  • dongpaipu8394 2014-10-11 01:49
    关注

    You can use the simple post form like this. I think whats causing it is because of the target attribute on that form. Its sending your whole page into the iframe.

    <?php
    $keyurl = '';
    if(isset($_POST['siteurl'])) {
        $keyurl = $_POST['siteurl'];
        echo $keyurl;
    }
    ?>
    
    <div class="mobile-logo">
        <H2>How does your website look on a Mobile Device?</h2>
        <form method="post">
            Enter your website's URL: <input type="text" name="siteurl" value="http://" size="50"><br>
            <input type="submit" value="VIEW" />
        </form><br>
        <a name="iframe-1"></a>
        <div class="theiframewrap">
            <iframe name="mobileframe" class="theiframeid" src="<?php echo $keyurl; ?>"></iframe>
        </div>
    </div>
    

    Alternatively, you could use only jquery for this:

    <div class="mobile-logo">
        <H2>How does your website look on a Mobile Device?</h2>
        <form method="post">
            Enter your website's URL: <input type="text" name="siteurl" value="http://" size="50"><br>
            <input type="submit" value="VIEW" />
        </form><br>
        <a name="iframe-1"></a>
        <div class="theiframewrap">
            <iframe name="mobileframe" class="theiframeid" src=""></iframe>
        </div>
    </div>
    
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script type="text/javascript">
    $(document).ready(function(){
    
        $('input[type="submit"]').on('click', function(e){
            e.preventDefault();
            var url = $('input[name="siteurl"]').val();
            $('.theiframeid').attr('src', url);
        });
    
    });
    </script>
    

    Important Note: Not all sites will allow you to put theirs on your iframe. (Yahoo's and others)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R
  • ¥15 在线请求openmv与pixhawk 实现实时目标跟踪的具体通讯方法
  • ¥15 八路抢答器设计出现故障
  • ¥15 opencv 无法读取视频
  • ¥15 按键修改电子时钟,C51单片机
  • ¥60 Java中实现如何实现张量类,并用于图像处理(不运用其他科学计算库和图像处理库))