ist. Ich habe ein nettes Tool erstellt, um mein Geschäft auf einer Google-Karte zu finden, die jeden Ort von einem Javascript-Objekt aus iteriert. Ich brauche ein "kein Suchergebnis", wenn meine .search-Funktion kein Ergebnis findet. Das Problem ist, dass mein Code sowieso mit jedem Ort iteriert wird, so dass er einen multiplen Text für alle meine Orte erzeugt. Gibt es trotzdem eine Lösung für dieses Problem? Hier ist es mein Code:Stoppen Sie die Jquery-Iteration, wenn die .search-Methode gleich -1
Die javascript:
var output = '<div class="searchresults">';
$.each(markers, function(key, markers) {
output += '<div>';
output += '<h2>'+ markers.title +'</h2>';
output += '<div>'+ markers.html +'</div>';
output += '<div>'+ markers.city +'</div>';
output += '<div>'+ markers.postalcode +'</div>';
output += '<div>'+ markers.phone +'</div>';
output += '</div>';
});
output += '</div>';
$('#legend').html(output);
$('#geocomplete').keyup(function() {
var searchField = $('#geocomplete').val();
var myExp = new RegExp(searchField, "i");
var output = '<div class="searchresults">';
$.each(markers, function(key, markers) {
if (markers.city.search(myExp) == -1 && markers.postalcode.search(myExp) == -1) {
output += ("<p>No search result</p>");
} else {
output += '<div>';
output += '<h2>'+ markers.title +'</h2>';
output += '<div>'+ markers.html +'</div>';
output += '<div>'+ markers.city +'</div>';
output += '<div>'+ markers.postalcode +'</div>';
output += '<div>'+ markers.phone +'</div>';
output += '</div>';
}
});
output += '</div>';
$('#legend').html(output);
});
}
google.maps.event.addDomListener(window, 'load', initialize);
und die html:
<div class="container-fluid map">
<h2>Where To Buy</h2>
<fieldset>
<legend>Find a Store Near You</legend>
<form>
<input id="geocomplete" class="controls" type="text" placeholder="Start typing your City or Postal Code to get your Chickapea!" size="60" />
<input id="find" type="button" value="Find" />
</form>
</fieldset>
<div id="legend"></div>
<div class="container-fluid" id="map-canvas-two"></div>
</div>
</body>
</html>
Richtig, also ... was macht es jetzt, und was wolltest du es stattdessen tun? –
ich in der Post erklärt, wenn (markers.city.search (myExp) == -1 && markers.postalcode.search (myExp) == -1) { \t \t \t \t Ausgang + = ("
Kein Suchergebnis
"); \t \t \t} wird kein Suchergebnis für alle meine Position ausgeben, aber ich brauche, dass es nur ein Ergebnis –ausgeben wird und ich frage, weil es unklar ist. Kannst du es vielleicht auf eine andere Art erklären? –