+ -
当前位置:首页 → 问答吧 → Google Map 开发,用到Frame ,请问如何在左右Frame间传值

Google Map 开发,用到Frame ,请问如何在左右Frame间传值

时间:2011-11-28

来源:互联网

左边Frame中有下拉菜单和一个查询按钮,还有一个用于显示查询结果的文本域,我的思路是点击提交按钮后就会把查询的结果标记在右边框架的地图上,我的框架结构是这样的:
HTML code
 
 <frameset id="topframe" rows="45,*" cols="*" frameborder="no" border="0" framespacing="0">
            <frame src="mapTop.html" name="Top" scrolling="No" noresize="noresize" name="Top" />
            <frameset cols="200,*" frameborder="no" border="0" framespacing="0" id="frame">
                <frame src="left.html" name="Left"  target="rightframe" scrolling="yes" noresize="noresize"/>
                <frame src="right.php" name="rightframe" scrolling="yes" noresize="noresize"  />
            </frameset>
        </frameset>


在left.html中的有一个表单,用来提交下拉菜单的选中值,进行数据库查询,代码如下:
HTML code

 <form name="form1" method="post" target= "rightframe" action="right.php">
                                                                  <tr>
                                        <td width="82" align="left" class="Left_Item02">病毒类型:</td>
                                        <td width="89" align="left" class="left02down01">
                                            <select id = "searchType" name="type" onChange="clear()">
                                                <option value="IBV"> IBV </option>
                                            </select>
                                        </td>
                                    </tr>


right.php中的代码加载地图等;
现在的问题包括以下几个方面:
1、我是应该在left.html中检索数据库(前面说道我的左边框架还有一个用于显示结果的文本域),把值传到右边frame?还是在right.php 中进行检索?
2、其实以上两种方法我都试过,在left.html 中检索,我用的是
JScript code

 var url = "ajaxHttp.php?type=" + escape(type) + "&location=" + escape(name_add)+"&year=" + escape              (year);                             
 url=url+"&sid="+Math.random();
xmlHttp.open("GET",url,true);
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.send(null);


function stateChanged() {
                var n=0;
                textValue="";
                if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
                    var xmlDoc = xmlHttp.responseXML;
                    var markerNodes =xmlDoc.documentElement.getElementsByTagName("marker");
                    var bounds = new google.maps.LatLngBounds();
                    var j=markerNodes.length;
                    ..........


但是我无法将查询的信息传到右边框架;

3、如果把下拉菜单中的选中值传到right.php中,进行检索,是可以得到结果,但是在chrome 浏览器中,进行查询的时候不是在rightframe中打开,而是在新窗口中打开。始终不知道原因所在。
这个问题困扰我两周了,查了很多还是无法解决,希望各位高手可以忙忙看看,急需解决啊!!!万分感谢

作者: SHMILYRINGPULL   发布时间: 2011-11-28

热门下载

更多