i'have в список списке опций содержит OnChange = "setLocation (this.value)"отменить OnChange событие через JQuery
<div class="sort-by">
<select onchange="setLocation(this.value)">
<option value="http://example.com/test.html?dir=asc&order=position">Position</option>
<option value="http://example.com/test.html?dir=asc&order=name">Name</option>
<option value="http://example.com/test.html?dir=asc&order=price">Price</option>
<option value="http://example.com/test.html?dir=asc&order=created_at" selected="selected">Date</option>
<option value="http://example.com/test.html?dir=asc&order=end_date">End date</option>
<option value="Range">Range</option>
</select>
</div>
У меня есть JQuery потом добавит некоторую ценность
selectValues = { "Range": "Range" };
jQuery.each(selectValues, function(key, value) {
jQuery('.sort-by select').append(jQuery("<option></option>").attr("value", key).text(value));
});
Когда пользователь выбирает специфично Я хочу, чтобы отменить setLocation
и сделать еще одну операцию
jQuery(document).ready(function(){
jQuery('.sort-by select').change(function(){
var selectedVal = jQuery(".sort-by select option:selected").val();
if (selectedVal == "Range") {
return false;
}
});
});
Как я могу d o что?
что .sort -выбор, это тот же самый вход для выбора, что и в que stion – atul
один из способов сделать это - удалить атрибут onchange и сделать if, если в функции изменения jQuery – madalinivascu
, если вы прикрепляете событие изменения через jquery, то почему вы добавляете атрибут onchange в свой элемент, вызывайте этот метод внутри своего jquery change event на основе вашего состояния – atul