Javascript 获取表单输入onBlur以创建查询字符串

Javascript 获取表单输入onBlur以创建查询字符串,javascript,forms,query-string,onblur,Javascript,Forms,Query String,Onblur,首先是一点背景。。。我正在做一个数据库项目,通过一个网络表单从与博物馆标本相关的印刷标签收集数据。表单的一部分包括几个地区字段,例如国家、州、县和位置。通常,这些标本没有与其相关的地理坐标(纬度、经度),因此需要追溯地理参考。我有一个图标作为表单的一部分,它链接到一个web应用程序,如果给定上面列出的表单字段中的值,该应用程序将绘制一个点 所以,如果可能的话,我想做的是让建立数据库的人在表单中输入位置数据。在填写location字段时,javascript onblur或onchange事件将构

首先是一点背景。。。我正在做一个数据库项目,通过一个网络表单从与博物馆标本相关的印刷标签收集数据。表单的一部分包括几个地区字段,例如国家、州、县和位置。通常,这些标本没有与其相关的地理坐标(纬度、经度),因此需要追溯地理参考。我有一个图标作为表单的一部分,它链接到一个web应用程序,如果给定上面列出的表单字段中的值,该应用程序将绘制一个点

所以,如果可能的话,我想做的是让建立数据库的人在表单中输入位置数据。在填写location字段时,javascript onblur或onchange事件将构建一个查询字符串(即?country=xxx&state=xxx&county=xxx&location=xxx;其中xxx是从表单onblur获取的数据),以便将其附加到图标链接以访问映射web应用程序。在某些情况下,样本可能没有所有局部性字段的数据,这可能会使事情变得有点复杂(??),但mapping应用程序就是为了处理这个问题而构建的

输入字段示例:

    <input name="country" placeholder="Country" onblur="if(this.value != '') { SOME CODE HERE??;}" required="required" type="text"/>

图标+链接:

    <a href="http://www.museum.tulane.edu/geolocate/web/WebGeoref.aspx?country=xxx&state=xxx&county=xxx&locality=xxx" class="lytebox" data-title="Find Lat/Long" data-lyte-options="width:1000px height:800px scrollbars:no"><img title="Click to georeference location using GEOLocate." alt="" height="16" src="images/world.png" width="16" class="auto-style5"></a>

我对javascript不是很熟悉,我已经搜索了很多类似于这个问题的解决方案,但到目前为止我还是一无所获


我希望有人能帮忙。

好的,经过几个小时的修补,我想我找到了这个

我提出的脚本出现在标题中:

    <script type="text/javascript">
    function check_onblur() {
         var country = document.getElementById('country').value;
         var state = document.getElementById('state').value;
         var county = document.getElementById('county').value;
         var locality = document.getElementById('locality').value;

         document.getElementById('geolink').href = "http://www.museum.tulane.edu/geolocate/web/
           WebGeoref.aspx?country=" + country + "&state=" + state + "&county=" + county 
           + "&locality=" + locality;
    }
    </script>

函数检查\u onblur(){
var country=document.getElementById('country')。值;
var state=document.getElementById('state')。值;
var county=document.getElementById('county')。值;
var locality=document.getElementById('locality')。值;
document.getElementById('geolink')。href=”http://www.museum.tulane.edu/geolocate/web/
WebGeoref.aspx?country=“+country+”&state=“+state+”&country=“+country
+“&locality=“+locality;
}
表单上的输入字段示例:

    <input id="country" tabindex="14" name="country" placeholder="Country"
       onblur="check_onblur();" required="required" type="text"/>

基于表单字段条目更新的图像链接:

    <a id="geolink" href="http://www.museum.tulane.edu/geolocate/web/WebGeoref.aspx"
    class="lytebox" data-title="Get Latitude/Longitude from Locality Data" data-lyte-
    options="width:1000px height:780px scrollbars:no"><img title="Click to georeference
    location using GEOLocate." alt="" height="16" src="images/world.png" width="16"
    class="auto-style5"></a>


这将在触发onblur事件后使用查询更新基本URL。一切都很好……

你的问题是什么?基本上,如果有人在表单中的国家字段中键入USA,然后移动到下一个字段,js onblur事件应该触发并更新到地图站点的链接,并在查询字符串中使用国家名称(即,&Country=USA)。州、县和地方字段也是如此。希望我能清楚地说明这一点。如果需要更多细节,请告诉我。