main.html<html>
<head>
<script type="text/javascript">
function newSrc(ddd)
  {
  parent.document.getElementById("iframeid").src="ddd";
  }
</script>
</head><body>
<iframe id="iframeid"></iframe>
<input type="button" onClick="newSrc(abc.html)" value="改变框架的 source" />
</body></html>abc.html内容<html><head>  </head>测试内容</html>
我想设置一个 newsrc的函数参数为ddd  实现框架内网页的动态改变,但是我上的代码无法实现
请问各位高手 怎样更改    这是个值得考虑的问题  希望大家一起探讨解决 !!!!!!!

解决方案 »

  1.   

    使用jQuery
      function setSrc(frameName, url)
      {
        var frame, outerFrame = $($(parent)[0].document).find(frameName);
        try
        {
            frame = $(parent)[0].frames[frameName] || outerFrame[0].contentWindow;
        }
        catch (e)
        {
            frame = outerFrame[0].contentWindow;
        }
        frame.document.location = url;
      }
    无论是iframe,还是frame,都可以实现更改url
      

  2.   


    <html>
    <head>
    <script type="text/javascript" src="js/jquery-1.3.2.min.js">  </script>
    </head>
    <body>
    <input type="button" id="btn" value="改变iframe">
    <iframe width="100%" src="a1.html"></iframe>
    </body>
    </html>
    <script language="javascript">
    $(function()
    {
    $('#btn').click(changeSrc);    
    });
    function  changeSrc()
    {
    $('iframe').attr({src:'a2.html'});
    }
    </script>
      

  3.   

    .getElementById("iframeid").src="ddd"; 中的ddd不是你方法newSrc的参数ddd.是字符串“ddd”。传递参数,不要加 ""
    .getElementById("iframeid").src=ddd; 这样
    另外 onClick="newSrc(abc.html)"  建议给参数加上引号
    onClick="newSrc('abc.html')" 
      

  4.   

    main.html
    <html>
    <head>
    <script type="text/javascript">
    function newSrc(ddd)
      {
      document.getElementById("iframeid").src=ddd;
      }
    </script>
    </head><body>
    <iframe id="iframeid"></iframe>
    <input type="button" onClick="newSrc("abc.html")" value="改变框架的 source" />
    </body></html>
    不用使用parent吧。