微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery下拉列表更改事件不触发

如何解决jQuery下拉列表更改事件不触发

| 我编写了Asp.Net MVC应用程序,想实现级联下拉列表功能,但是jQuery change事件有问题。 我哪里错了? Javascript:
<script charset=\"utf-8\" type=\"text/javascript\" language=\"javascript\" src=\"<%= Url.Content(\"~/Content/jquery-1.4.1.js\") %>\"></script>
<script charset=\"utf-8\" type=\"text/javascript\" language=\"javascript\">
  $(document).ready(function () {
      $(\"#ddlCategories\").change(function () { alert(\"It worked!\"); });
  });
</script>
MVC:
<%=Html.DropDownList(\"CategoriesId\",(SelectList)ViewData[\"CategoriesList\"],new { Id = \"ddlCategories\" })%>                    
<%=Html.DropDownList(\"ModelId\",(SelectList)ViewData[\"ModelsList\"],new { Id = \"ddlModels\" })%>  
HTML:
<select name=\"CategoriesId\" id=\"ddlCategories\">
  <option value=\"1\">Thermage Solta Medical</option>
  <option value=\"2\">Syneron</option>
  <option value=\"59\">Deka</option>
</select>                    
<select name=\"ModelId\" id=\"ddlModels\">
  <option value=\"1\">Thermage NXT RF</option>
  <option value=\"2\">Thermacool TC</option>
</select>     
    

解决方法

工作正常,请参见此处。您确定没有其他JavaScript错误吗?     ,这看起来似乎很明显,而且我知道这个问题很旧,但是以防万一有人到达此页面并遇到最初发布者所描述的问题,在处理继承的代码或使用继承的代码时,很容易发生至少一种可能的原因。大型项目。 检查并确保选择元素的ID是唯一的。我知道ID应该是唯一的,但是由于如果使用HtmlHelper类,ASP.NET MVC会为您创建ID,并且由于您可能在单个页面中呈现了许多部分,因此重复的可能性很高。就我而言,我有2个具有相同ID的元素,因此当我将事件附加到$(\'#selectID \')时,它是附加到第一个元素,而不是我想要的那个。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。