javascript的“更改”函数在asp.net mvc中不起作用
Posted
技术标签:
【中文标题】javascript的“更改”函数在asp.net mvc中不起作用【英文标题】:Function 'on change' of javascript not working in asp.net mvc 【发布时间】:2020-03-03 03:04:52 【问题描述】:我尝试使用 js ASP.NET MVC 5 查看基于类别的产品列表。我是新手,它根本不会作用于选择框。这是我的代码:
我的选择块:
<select class="SelectCategory" name="SelectCategory">
<option value="0">All</option>
@foreach (var item in ViewBag.categories)
if (ViewBag.SelectedCat == item.Value)
<option selected="selected" value="@item.Value">@item.Text</option>
else
<option value="@item.Value">@item.Text</option>
Js:
@section Scripts
<script src="https://code.jquery.com/ui/1.12.0/jquery-ui.min.js"></script>
<script>
$(function ()
$("#SelectCategory").on("change",
function()
var url = $(this).val();
if (url)
window.location = "/admin/shop/Products?catId=" + url;
return false;
);
);
</script>
【问题讨论】:
【参考方案1】:$("#SelectCategory")
这将查找带有 id 的 dom,但您使用了类和名称。您可以添加 id 属性来选择
<select id='SelectCategory' class="SelectCategory" name="SelectCategory">
【讨论】:
【参考方案2】:$("#SelectCategory").on("change",
这是错误的,因为您的元素不包含 ID 元素,而这正是您的 jQuery 选择器中 #
符号所指示的内容。
如果您想通过 name 属性定位元素,您应该使用以下内容:
$("[name='SelectCategory']").on("change",
【讨论】:
以上是关于javascript的“更改”函数在asp.net mvc中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
javascript 无法从 asp.net 更改简单的标签文本
ASP.NET 页面加载完成后运行 javascript 函数
如何在 asp.net 中从 javascript 调用代码隐藏函数?