Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery单击时摆脱onclick_Javascript_Jquery - Fatal编程技术网

Javascript 使用jQuery单击时摆脱onclick

Javascript 使用jQuery单击时摆脱onclick,javascript,jquery,Javascript,Jquery,好的,我有一些精选的城市标签 <select onchange="storeCity(this.value, false)" name="search[city]" id="search_city" class="left"> <option value="">== Select City ==</option> <optgroup label="Florida"><option selected="selected" value

好的,我有一些精选的城市标签

  <select onchange="storeCity(this.value, false)" name="search[city]" id="search_city" class="left">
  <option value="">== Select City ==</option>
  <optgroup label="Florida"><option selected="selected" value="ft-myers-sarasota-fl">Ft. Myers / Sarasota </option>
  <option value="jacksonville-fl">Jacksonville</option>
  <option value="miami-fl">Miami / Ft. Lauderdale </option>
  <option value="orlando-fl">Orlando</option>
  <option value="tampa-fl">Tampa</option></optgroup></select>
}


我遇到的问题是,它无论如何都会转到链接,我需要它来删除链接或选择上的onchange…某些东西正在使页面刷新…但我不知道您有一个名为

storeCity(this.value, false) 

在更改事件中,这可能是刷新页面。检查一下。

您有一个名为

storeCity(this.value, false) 

在更改事件中,这可能是刷新页面。检查一下。

还有一个警告-我不会在更改事件中使用e.preventDefault()(除非您真的需要),因为它在某些浏览器中可能会有一些奇怪的行为。通常这只是针对点击事件。

还有一个警告-我不会在更改事件上使用e.preventDefault()(除非您真的需要),因为它在某些浏览器中可能会有一些奇怪的行为。通常这只是用于单击事件。

您可能会使用它。例如

$('#search_city').one('change', function() {
  /* Your code */
});
change
事件将只执行一次。

您可能会使用它。例如

$('#search_city').one('change', function() {
  /* Your code */
});
change
事件将只执行一次。

storeCity(this.value,false)可能导致刷新

顺便说一句,您可以像这样合并代码:

$('#search_city').change(function(e) {
   storeCity(this.value, false);  
   if (this.value.match(/(jacksonville-fl|miami-fl|tampa-fl|ft-myers-sarasota-fl)/i)) {
      //do some stuff
   }
   e.preventDefault();
});
storeCity(this.value,false)可能导致刷新

顺便说一句,您可以像这样合并代码:

$('#search_city').change(function(e) {
   storeCity(this.value, false);  
   if (this.value.match(/(jacksonville-fl|miami-fl|tampa-fl|ft-myers-sarasota-fl)/i)) {
      //do some stuff
   }
   e.preventDefault();
});

这是刷新页面的方法吗??您是否检查了刷新页面的方法??是吗check@mat检查您是否在页面的任何位置使用location.href。@检查您是否在页面的任何位置使用location.href。+1建议以某种方式合并代码,即使这不是最佳方式。我怀疑
e.preventDefault()是必需的。+1用于建议以某种方式合并代码,即使这不是最好的方式。我怀疑
e.preventDefault()是必需的。