JavaScript代码执行按钮点击,但不是输入按键

我正在搜索按钮上的位置。 结果正在点击按钮。 但我已经提交了相同的代码提交功能,但在这里搜索不起作用。

按钮点击代码(这是工作)

    $("#gobuttton").click(function() {
        $("#gmaplatlon").validate({
            rules:{"latitude":{number:true}, "longitude":{number:true}, "zoom":{digits:true,min:0}},
            errorPlacement:errorMessages
        });
        $("#address").change(function(){
            geocoder.geocode({"address": $(this).attr("value")}, function(results, status) { if (status == google.maps.GeocoderStatus.OK) { map.setZoom(16); map.setCenter(results[0].geometry.location); } else { alert("Geocode was not successful for the following reason: " + status); } });
        });
});



按输入按钮代码(相同但不工作)

     $('#frm').keypress(function(e) {
     var code = e.keyCode;
     if(code === 13){
         e.preventDefault();
         alert(code);
         $("#gmaplatlon").validate({rules:{"latitude":{number:true}, "longitude":{number:true}, "zoom":{digits:true,min:0}}, errorPlacement:errorMessages});
         $("#address").change(function(){ geocoder.geocode({"address": $(this).attr("value")}, function(results, status) { if (status == google.maps.GeocoderStatus.OK) { map.setZoom(16); map.setCenter(results[0].geometry.location); } else { alert("Geocode was not successful for the following reason: " + status); } }); });
       }
});


我的功能是 - 在文本框中输入地址,然后按回车键,然后它应该在谷歌地图上搜索,这是在按钮点击时执行的,但不是在按下回车键时执行。

HTML代码如下

<form method="post" name="frm" id="frm" enctype="multipart/form-data" action="<?php echo site_url('home/sendmapdata');?>"> 
 <input name="address" type="text" id="address" border: solid 1px; " size="60" value="Search from address" onClick="this.value=''"> 
<input type="button" id="gobuttton" value="go"> 
<div id="map_canvas" style="height: 480px; width:665px; " ></div> 
<input type="hidden" name="gmaplatlon" value="true"> 
<p align="center">
<input type="submit" name="okbutton" value="OK" >
</p>
</form>

Tyr这个:

$(document).ready(function(){
    $('#address').keypress(function(e) {
         var code = e.keyCode;
         if(code === 13){
             //e.preventDefault();
             alert(code);
             $("#gmaplatlon").validate({rules:{"latitude":{number:true}, "longitude":{number:true}, "zoom":{digits:true,min:0}}, errorPlacement:errorMessages});
             $("#address").change(function(){ geocoder.geocode({"address": $(this).attr("value")}, function(results, status) { if (status == google.maps.GeocoderStatus.OK) { map.setZoom(16); map.setCenter(results[0].geometry.location); } else { alert("Geocode was not successful for the following reason: " + status); } }); });
         }
         return false;
    });
});

$('#frm').keypress(function(e)$('#address').keypress(function(e)

更新:

我认为你的问题是验证哪些阻止调用映射函数,在你的keypress函数中添加这个$('#frm').valid()


您应该尝试将#address事件提供给#address而不是#frm

$('#frm').on('keypress', '#address', function(e) {
链接地址: http://www.djcxy.com/p/51623.html

上一篇: javascript code execute on button click but not on enter key presses

下一篇: How to capture enter key press of?