Я знаю, что это будет очень простой вопрос, но, пожалуйста, будьте терпеливы со мной, поскольку я только начал использовать js и jquery.
Вот моя часть кода -
<html>
<head>
</head>
<body>
<form method="post" action="module.php">
<select name="dateRange" size="1" onchange="window.location=this.options[this.selectedIndex].value">
<option value > Select Duration </option>
<option value="/module.php/?dateRange=1d">Last 24 Hours</option>
<option value="/module.php/?dateRange=2d">Last 2 Days</option>
<option value="/module.php/?dateRange=1w">Last Week</option>
<option value="/module.php/?dateRange=2w">Last 2 Weeks</option>
<option value="/module.php/?dateRange=1m">Last Month</option>
<option value="/module.php/?dateRange=3m">Last 3 Months</option>
<option value="/module.php/?dateRange=6m">Last 6 Months</option>
<option value="/module.php/?dateRange=1y">Last Year</option>
<option value="/module.php/?dateRange=all">All</option>
</select>
</form>
</body>
</html>
теперь я не понимаю, как написать функцию onchange, где я могу выполнить весь мой запрос и отобразить свой результат, когда пользователь выбирает любое значение из раскрывающегося списка. И после этого я хотел бы сохранить выбранное значение в переменной и использовать это значение на той же странице?
Допустим, вы mySelect
идентификатор mySelect
на ваш выбранный вход.
Затем вы можете определить:
<script type="text/javascript">
$('#mySelect').on('change', function () {
// do your thing
});
</script>
Вышеуказанное onchange
событие onchange
(jQuery) к вашему элементу и будет запускаться каждый раз, когда пользователь изменяет выбор.
вы будете использовать обработчик
<html>
<head>
</head>
<body>
<form method="post" action="module.php">
<select name="dateRange" size="1" onchange="window.location=this.options[this.selectedIndex].value">
<option value > Select Duration </option>
<option value="/module.php/?dateRange=1d">Last 24 Hours</option>
<option value="/module.php/?dateRange=2d">Last 2 Days</option>
<option value="/module.php/?dateRange=1w">Last Week</option>
<option value="/module.php/?dateRange=2w">Last 2 Weeks</option>
<option value="/module.php/?dateRange=1m">Last Month</option>
<option value="/module.php/?dateRange=3m">Last 3 Months</option>
<option value="/module.php/?dateRange=6m">Last 6 Months</option>
<option value="/module.php/?dateRange=1y">Last Year</option>
<option value="/module.php/?dateRange=all">All</option>
</select>
</form>
<script>
$( document ).ready(function() {
$( "select" )
.change(function () {
alert('OnChange happened');
//you can add your stuff here
});
})
});
</script>
</body>
</html>
Instead of this :
<select name="dateRange" size="1" onchange="window.location=this.options[this.selectedIndex].value">
Try This :
<select name="dateRange" size="1" onchange="submit();">
And in 'MODULE.php' get the selected value using :
$var = $_POST['dateRange'];
echo $var;
And then write your query..
Я создал тебя скрипкой :)
оно использует
$('#duration').on('change', function () {
var selectedEl = $('#duration').val();
console.log(selectedEl);
});
Чтобы обнаружить изменение в select и val()
чтобы получить выбранную опцию.