我使用的是基于IP生成用户城市的服务。我已经有一个脚本将其添加到隐藏表单域的值域中。现在我需要将它插入到html中的3个不同位置。下面的当前脚本将城市插入到隐藏的表单字段中。到目前为止,我所拥有的:
标题:
<script src="http://js.maxmind.com/js/apis/geoip2/v2.1/geoip2.js"></script>正文:
<form name="form1" id="form1" method="post" action="script.php">
<input type="hidden" id="city" name="city" value="" />
</form>
<script type="text/javascript">
"use strict";
var getCity = function( geoipResponse ){
var cityName = geoipResponse.city.names.en || 'your city';
document.getElementById('city').value = cityName;
};
var fail
= function(err) {
alert(err.error);
console.error(err);
}
geoip2.city( getCity, fail );
</script>
<a href="javascript:{}" onclick="document.getElementById('form1').submit(); return false;" class="agree">Submit</a>这样可以很好地提交表单。现在我只需要显示一些在html中的城市,但我似乎不能让它工作。有人知道我是怎么做到的吗?
发布于 2015-01-06 09:11:39
编辑:
如果您有3个不同的地方来显示城市,那么在HTML中的3个不同的地方使用HTML元素中的类。例如:
<div class="city-display"></div>然后把它展示出来:
var getCity = function( geoipResponse ){
var cityName = geoipResponse.city.names.en || 'your city';
document.getElementById('city').value = cityName;
$('div.city-display').text(cityName);
};发布于 2015-01-06 09:05:35
我在这里发帖,因为我无法评论...
看起来您的输入元素中包含了type="hidden"。这可能是您看不到cityName值出现的原因。
https://stackoverflow.com/questions/27790508
复制相似问题