我有以下代码:
$('#details').on('change', (e) => {
console.log('change detected');
$('#details').find('*').attr('disabled', true);
$.ajax({
//...
});
function ResetFilters() {
$('#Neighbourhoods')[0].selectedIndex = 0;
$('#LowestPrice')[0].value = 0;
$('#HighestPrice')[0].value = 999;
$('#LowestReviews')[0].value = 0;
$('#HighestReviews')[0].value = 10;
$('#details').change();
}
不幸的是, $('#details')。change(); 不执行上面定义的onchange方法。
我也尝试过 $('#details')。trigger('change'); ,但这也不起作用。
有人知道我在做什么错吗?
欢迎提出任何建议。
编辑:
这是我的html(我使用asp.net)
@model AirBnB.ViewModels.ListingsViewModel
@await Html.PartialAsync("City", Model.Details)
<hr/>
<h4>Filters</h4>
<form action="/" method="post" id="details" class="details-block">
@await Html.PartialAsync("Neighbourhoods", Model.Details)
@await Html.PartialAsync("Prices", Model.Details)
@await Html.PartialAsync("Reviews", Model.Details)
@await Html.PartialAsync("ResetFilters")
</form>
<script src="~/js/filter.js" asp-append-version="true"></script>
<hr/>
@await Html.PartialAsync("Charts")
答案 0 :(得分:1)
详细信息是一种形式,也许您是说
$('#details').on('submit', (e) => {
console.log('change detected');
$('#details').find('*').attr('disabled', true);
$.ajax({
//...
});