0

嗨,我有一个输入,用户在其中插入他的地址,然后当他在输入之外单击时,设置了地图的标记。这很好用。

注意:谷歌地图上的 IM 设置标记..

$("#address1").blur(function()
        {
            loadCoordinates("");
        });

问题是......当用户使用编辑表单时......使用相同的javascript来设置标记......他们需要点击ipnut然后在外面设置标记

所以我尝试在 document.load 上设置标记但这并没有在我的地图上设置任何标记..

$(document).ready(function(){
var checkVal = $("#address1").val();
if(checkVal==''){

}
else{
loadCoordinates("");
}
});

编辑:

我什至试过这个:(也

$(function()
        {
            loadCoordinates("");
        });

不工作..

4

2 回答 2

2

根据您的评论,听起来您需要两个不同的事件来触发地图加载。根据您现有的设计,有几个选择,您非常接近:

function loadCoordinates(){
  if( $("#address1").val() != '' ){ 
    // do the actual map pin load
  }
}
$(function(){

  // Load the coords on doc load
  loadCoordinates();

  $("#address1").blur( loadCoordinates );

});

或者,从技术上讲,您可以致电$("#address1").blur( loadCoordinates ).trigger('blur');

于 2013-11-10T01:54:29.080 回答
0

Blur当您的元素失去焦点时触发事件,如果您想更早地调用您的函数以更好地使用keyup但在这种情况下,您还需要检查当前输入值是否对您的函数有效,因为keyup当用户释放键盘上的键时触发事件。

于 2013-11-10T01:52:57.823 回答