Javascript 如何停止刷新页面?
事实上,我已经编写了一段代码来检测地理位置,基于该地理位置,货币将发生变化,它也在工作,但这里的问题是,这段代码一次又一次地刷新整个页面,如果我删除了另一部分,页面将刷新,如果我保留该部分,则条件不起作用,有谁能建议我如何阻止我写的这篇文章Javascript 如何停止刷新页面?,javascript,jquery,geolocation,Javascript,Jquery,Geolocation,事实上,我已经编写了一段代码来检测地理位置,基于该地理位置,货币将发生变化,它也在工作,但这里的问题是,这段代码一次又一次地刷新整个页面,如果我删除了另一部分,页面将刷新,如果我保留该部分,则条件不起作用,有谁能建议我如何阻止我写的这篇文章 <script type="text/javascript"> //alert("Welcome to our visitors from "+geoplugin_currencyCode()); alert("Welcom
<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') {
$('#currency input[name=\'code\']').attr('value', 'INR');
$('#currency').submit();
alert('Your currency is set to INR');
} else {
$('#currency input[name=\'code\']').attr('value', 'USD');
$("#currency").change();
alert('Your currency is set to USD');
}
} else {
return false;
}
</script>
//警报(“欢迎来自“+geoplugin_currencyCode()”的访客”);
警报(“欢迎来自“+geoplugin_countryName()的访客”);
$flag=false;
如果($flag==false){
var country=geoplugin_countryName();
如果(国家==‘印度’){
$(“#货币输入[name=\'code\']”)。attr('value','INR');
$('货币').submit();
警报(“您的货币设置为印度卢比”);
}否则{
$(“#货币输入[name=\'code\']”)。attr('value','USD');
美元(“#货币”).change();
警报(“您的货币设置为美元”);
}
}否则{
返回false;
}
试试看
您的代码很好,但您必须以不同的方式处理它。第一次加载页面时,假设您将国家命名为
India
。所以现在要转到if(country==“India”){
code执行$(“#currency”).submit();
行并提交表单。因此,表单提交后,您必须设置INR
值可能位于隐藏字段中。然后您可以添加一行代码来验证隐藏字段是否具有INR
值。如果具有值INR
,则不执行代码
假设您有一个id为currency\u code
的隐藏字段。所以现在在表单之后提交您从$(“\35; currency input[name=\'code\]”)发布的任何值(
只需在currency\u code
input隐藏字段中设置该值即可
现在检查代码中的条件
<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>
//警报(“欢迎来自“+geoplugin_currencyCode()”的访客”);
警报(“欢迎来自“+geoplugin_countryName()的访客”);
$flag=false;
如果($flag==false){
var country=geoplugin_countryName();
如果(国家==‘印度’){
如果($(“#货币代码”)!==“印度卢比”){
$(“#货币输入[name=\'code\']”)。attr('value','INR');
$('货币').submit();
警报(“您的货币设置为印度卢比”);
}否则{
警报(“您的货币已设置为印度卢比”);
}
}否则{
$(“#货币输入[name=\'code\']”)。attr('value','USD');
美元(“#货币”).change();
警报(“您的货币设置为美元”);
}
}否则{
返回false;
}
我不确定你所有的HTML代码。但这是你处理问题的方法。希望这能对你有所帮助。我尝试过使用你的代码,但我的峰值不会自动重新加载。哪种代码刷新了你的页面?你是否删除了其他部分?如果不删除它并尝试在我的页面中重新加载它,我会在OpenCart中使用它。你有不止一个代码…我是Summing您是指包含
返回false;
的else,对吗?是的,当我删除它时返回false,它会持续重新加载此元素$(“#货币”)是什么
?它是一个表单吗?你能说-你的代码中有'country'变量吗?实际上这是我用来获取国家名称的插件。如果你注释掉这个$(“#currency”)。submit();它不会更改符号我是说currency当然,请尝试取消对此行的注释。如果取消对其重新编码的注释,还有其他方法吗
<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>