jQuery ajax和php iframe。表单目标问题

时间:2016-10-17 15:16:51

标签: javascript php jquery ajax iframe

这里的溢出者是每日问题。 =)

用例&问题描述:

  1. 我通过jQuery $ .ajax({...})提交表单
    • ajax post调用触发php完成的SQL插入。
    • SQL查询已成功执行,可以在数据库上进行检查。
  2. iframe ,用于显示结果未获得更新
    • 原始按钮附加到表单使用目标=" id_of_iframe" *
  3. 发布目的地位于同一网址,同一目标(my_iframe)
  4. 所以,

    • 如何使用$ .ajax帖子的结果数据更新iframe?

    • 我应该添加一些其他控件吗?

    • 其他一些表单提交方法,其中可编辑的帖子数据符合iframe标准吗?

    感谢所有提前,有一个很好的编码日:)

    代码:

    HTML

    <html>
      <head>
        ...
      </head>
      <body>
        <!--the iframe -->
        <iframe src ="iframe.php" 
          class="my_iframe" id="my_iframe" 
          name="my_iframe" frameborder="0" allowtransparency="true">
        </iframe>
        <!--the form -->
        <form id="my_form" action="iframe.php" 
         method="post" target="my_iframe">
           <!-- some input fields -->
           <button onclick="my_function"></button>
        </form>
      </body>
    </html>
    

    JAVASCRIPT - JQUERY

    function my_function(){
       var my_data = .../*go collect form data*/
       $.ajax({
         type: "POST",
         url: "iframe.php",
         data: my_data,
         success:function(response){
             $("#my_frame").html(response);
         }
       });
    }
    

    部分结果:

    1. Chrome控制台会记录有关jquery.min.js:4
    2. 的警告
        

      主线程上的同步XMLHttpRequest因不推荐使用   它对最终用户的体验产生不利影响。如需更多帮助,   检查https://xhr.spec.whatwg.org/

      1. 有些CSS会出现错误并且会出现一些字体/字体重量变化
      2. PS 在ajax.success函数中我尝试了这个替代方案,但问题是相同的:

        $('#my_iframe').append(result);
        

1 个答案:

答案 0 :(得分:0)

要更新iframe,您只需更新src属性即可:

$('iframe#my_iframe').attr('src', 'iframe.php');

将此内容放入您的ajax success回调中。并且iframe将重新加载。