实际上我已经编写了一段用于检测地理定位的代码,并且基于该地理位置,货币将会改变并且它也在工作但是这里的问题是一遍又一遍,这段代码正在刷新整个页面,如果我删除其他部分页面是令人耳目一新的,如果我保持其他条件不起作用,任何人都可以建议我如何阻止这就是我写的
public abstract class Piece {
...
protected Name name;
protected Color color;
...
}
答案 0 :(得分:1)
尝试
$(function(){
alert("Welcome to our visitors from "+geoplugin_countryName());
$flag=false;
if($flag===false){
var country = geoplugin_countryName();
if(country === "India"){
$("#currency input[name=\'code\']").attr("value", "INR");
$("#currency").submit();
alert("Your currency is set to INR");
return false;
} else{
$("#currency input[name=\'code\']").attr("value", "USD");
$("#currency").change();
alert("Your currency is set to USD");
return false;
}
} else{
return false;
}
});
答案 1 :(得分:0)
您的代码很好,但您必须以不同的方式处理它。对于页面加载时的第一个,假设您将国家/地区设为India
。现在,它转到if(country === "India"){
代码,执行$("#currency").submit();
行并提交表单。因此,一旦提交表单,您必须将INR
值设置为隐藏字段。然后,您可以添加一行代码以验证隐藏字段是否具有INR
值。如果它具有值INR
,则不执行代码。
假设您有隐藏字段{id currency_code
。现在,在表单提交后,您从$("#currency input[name=\'code\']")
发布的任何值都只需在#currency_code
输入隐藏字段中设置该值。
现在检查代码中的条件。
<script type="text/javascript">
//alert("Welcome to our visitors from "+geoplugin_currencyCode());
alert("Welcome to our visitors from "+geoplugin_countryName());
$flag=false;
if($flag===false) {
var country = geoplugin_countryName();
if(country === 'India') {
if($('#currency_code') !== 'INR') {
$('#currency input[name=\'code\']').attr('value', 'INR');
$('#currency').submit();
alert('Your currency is set to INR');
} else {
alert('Your currency is already set to INR');
}
} else {
$('#currency input[name=\'code\']').attr('value', 'USD');
$("#currency").change();
alert('Your currency is set to USD');
}
} else {
return false;
}
</script>
我不确定您的所有HTML代码。但这就是你处理问题的方式。希望这会对你有所帮助。