我是新来的 Javascript 所以请保持温和!
我有一个 Html 表单,我已成功编写脚本以从我的 SQL 数据库中查找商店,并将所选半径内的Google地图上的针点指向用户邮政编码。
有一个自由文本字段供用户输入其邮政编码和两个列表框,一个用于预设半径值,另一个用于预设商店类型。
如果选择了商店类型Type1
或Type2
但我希望用户能够选择All
并且它同时返回Type1
和{{ 1}}在地图上。
对我来说显而易见的是在searchUrl变量(下面)中有一个if语句,说明如果选择了Type2
,那么使用最后没有All
部分的url,否则使用现有网址。
然而,我已经尝试编写if语句,我无法使表单/ map工作,它不会返回任何值。
如何正确编写if语句或是否有更好的方法?
HTML
+ '&BusinessType=' + businesstypechoice
Javascript (我认为与此相关的功能中的部分)
<input type="text" id="addressInput" placeholder="Enter Postcode" size="13"/>
<select id="radiusSelect">
<option value="10" >10 mi</option>
<option value="25" selected>25 mi</option>
<option value="50" >50 mi</option>
<option value="100">100 mi</option>
<option value="200">200 mi</option>
</select>
<select id="businesstypeSelect">
<option value="All" selected>All</option>
<option value="Type 1" >Type 1</option>
<option value="Type 2" >Type 2</option>
</select>
<input type="button" onClick="searchLocations()" value="Search"/>
该功能继续。如果您需要了解更多内容,请与我们联系。
提前致谢!
编辑:
我对if语句的最新尝试:
var radius = document.getElementById('radiusSelect').value;
var businesstypechoice = document.getElementById('businesstypeSelect').value;
var searchUrl = 'phpsqlsearch_genxml.php?Latitude=' + center.lat() + '&Longitude=' + center.lng() + '&radius=' + radius + '&BusinessType=' + businesstypechoice;
downloadUrl(searchUrl, function(data) {
phpsqlsearch_genxml.php文件的第一部分。
var searchUrl;
if(businesstypechoice == 'All') {
searchurl = 'phpsqlsearch_genxml.php?Latitude=' + center.lat() + '&Longitude=' + center.lng() + '&radius=' + radius;} else
if(businesstypechoice != 'All') {
searchurl = 'phpsqlsearch_genxml.php?Latitude=' + center.lat() + '&Longitude=' + center.lng() + '&radius=' + radius + '&BusinessType=' + businesstypechoice;}
downloadUrl(searchUrl, function(data) {
我想我需要一个$ business_type变量的if语句,告诉它在选择'All'时不要查找BusinessType,因为我的SQL数据库的BusinessType列中不存在'All'。
答案 0 :(得分:4)
您可以在服务器上调试并查看通过查询字符串获取的数据吗?问题也可能与您的服务器端代码有关。
那说我是三元运营商的忠实粉丝。
var radius = document.getElementById('radiusSelect').value;
var businesstypechoice = document.getElementById('businesstypeSelect').value;
var searchUrl = 'phpsqlsearch_genxml.php?Latitude=' + center.lat() + '&Longitude=' + center.lng() + '&radius=' + radius;
searchUrl = (businesstypechoice === "All") ? searchUrl : searchUrl + '&BusinessType=' + businesstypechoice;
downloadUrl(searchUrl, function(data) {
这与说“如果businesstypechoice
等于全部然后返回searchUrl
,否则返回searchUrl
加上新的查询参数”。
还要注意你的骆驼外壳。 Businesstypechoice
应为businessTypeChoice