Javascript .change()选择“已更改”后进行页面刷新,如CTRL+;R
我如何设置javascript,一旦选择菜单选项被更改,然后直接模拟页面刷新,就像如果我选择一个选项,然后按CTRL+R,它将刷新页面,但保留选择,然后如果我再次执行相同的过程并刷新 但是我不希望用户这样做,我希望它使用.change()方法自动完成 好的老JavaScript(尽管我不确定您为什么要这么做): 不过,我不知道是否所有浏览器都会保留您的选择。对我来说,它可以在FF和Chrome中工作。很好的旧JavaScript(尽管我不知道你为什么要这么做):Javascript .change()选择“已更改”后进行页面刷新,如CTRL+;R,javascript,jquery,Javascript,Jquery,我如何设置javascript,一旦选择菜单选项被更改,然后直接模拟页面刷新,就像如果我选择一个选项,然后按CTRL+R,它将刷新页面,但保留选择,然后如果我再次执行相同的过程并刷新 但是我不希望用户这样做,我希望它使用.change()方法自动完成 好的老JavaScript(尽管我不确定您为什么要这么做): 不过,我不知道是否所有浏览器都会保留您的选择。对我来说,它可以在FF和Chrome中工作。很好的旧JavaScript(尽管我不知道你为什么要这么做): 不过,我不知道是否所有浏览器都会
不过,我不知道是否所有浏览器都会保留您的选择。对我来说,它在FF和Chrome中工作。因为您是通过编程触发事件的,所以您必须区分用户更改和您自己的更改。在事件回调中检测originalEvent就足够了
$("#select-options").change(function(e) {
selectedValue = $(this).val();
var p = selectedValue.indexOf("£");
rest = selectedValue.substring(p+1);
$(".item").attr("data-price",rest);
if(e.originalEvent) {
window.location.reload();
}
}).change();
由于您是以编程方式触发事件,因此必须区分用户更改和您自己的更改。在事件回调中检测originalEvent就足够了
$("#select-options").change(function(e) {
selectedValue = $(this).val();
var p = selectedValue.indexOf("£");
rest = selectedValue.substring(p+1);
$(".item").attr("data-price",rest);
if(e.originalEvent) {
window.location.reload();
}
}).change();
是的,我试过了,但它总是让人耳目一新。。。。我只想在进行新选择后刷新它。这可能是因为每次加载页面时都会触发更改事件(.change())。因此,我如何解决这个问题呢?只需删除触发实际事件的.change()部分。或者你需要它做任何事情吗?是的,因为它被传递给一个自定义的html属性。我尝试过,但它不断刷新。。。。我只想在进行新选择后刷新它。这可能是因为每次加载页面时都会触发更改事件(.change())。因此,我如何解决这个问题呢?只需删除触发实际事件的.change()部分。或者你需要它做什么?是的,因为它随后被传递到一个自定义html属性你的一个图例!甜心,工作起来很愉快!,谢谢你,伙计。正如你可能猜到的,我对所有的jQuery/Javascript都很了解,我可以阅读并理解它,只是还不能编写它!它在我的学习清单上!。。。。。别担心,我们都从某个地方开始。快乐编码!你是一个传奇!甜心,工作起来很愉快!,谢谢你,伙计。正如你可能猜到的,我对所有的jQuery/Javascript都很了解,我可以阅读并理解它,只是还不能编写它!它在我的学习清单上!。。。。。别担心,我们都从某个地方开始。快乐编码!
$("#select-options").change(function(e) {
selectedValue = $(this).val();
var p = selectedValue.indexOf("£");
rest = selectedValue.substring(p+1);
$(".item").attr("data-price",rest);
if(e.originalEvent) {
window.location.reload();
}
}).change();