I have bug when I click next or prev button. Here is my HTML
$("#nextPage").click(function() {
$('#pagination option:selected').next().attr('selected', 'selected');
console.log("hahaha next");
})
$("#prevPage").click(function() {
$('#pagination option:selected').prev().attr('selected', 'selected');
console.log("prev");
});
<script src=".1.1/jquery.min.js"></script>
<input type="button" value="prev" id="prevPage">
<select id="pagination">
<option value="1" selected>1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select>
<input type="button" value="next" id="nextPage">
I have bug when I click next or prev button. Here is my HTML
$("#nextPage").click(function() {
$('#pagination option:selected').next().attr('selected', 'selected');
console.log("hahaha next");
})
$("#prevPage").click(function() {
$('#pagination option:selected').prev().attr('selected', 'selected');
console.log("prev");
});
<script src="https://ajax.googleapis./ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="button" value="prev" id="prevPage">
<select id="pagination">
<option value="1" selected>1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select>
<input type="button" value="next" id="nextPage">
Here is my jsfiddle
Thank you
Use prop
instead of attr
and its work perfect.
$("#nextPage").click(function() {
$('#pagination option:selected').next().prop('selected', 'selected');
console.log("hahaha next");
})
$("#prevPage").click(function() {
$('#pagination option:selected').prev().prop('selected', 'selected');
console.log("prev");
});
<script src="https://ajax.googleapis./ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="button" value="prev" id="prevPage">
<select id="pagination">
<option value="1" selected>1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select>
<input type="button" value="next" id="nextPage">
Use .prop
instead of .attr
as .attr
will just add an extra attribute to each option whilst .prop
will actually change the selected item
$("#nextPage").click(function() {
$('#pagination option:selected').next().prop('selected', true);
console.log("hahaha next");
})
$("#prevPage").click(function() {
$('#pagination option:selected').prev().prop('selected', true);
console.log("prev");
});
<script src="https://ajax.googleapis./ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="button" value="prev" id="prevPage">
<select id="pagination">
<option value="1" selected>1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select>
<input type="button" value="next" id="nextPage">