2010-07-06 86 views
0

用下面的代码:ASP.NET MVC自动回下拉不工作

<script type="text/javascript" src="../../Scripts/jquery-1.4.1.js" /> 
<script type="text/javascript"> 
    $(function() { 
     $('#selectOptions').change(function() { 
      $(this).parents('form').submit(); 
     }); 
    }); 
</script> 

...

<% using (Html.BeginForm("PostedValue", "Home")) 
    { %> 

<%: Html.DropDownList("selectOptions", new List<SelectListItem> 
           { new SelectListItem{ Text="1", Value="1"}, 
            new SelectListItem{ Text="2", Value="2"}, 
            new SelectListItem{ Text="3", Value="3"}}, 
           "Select List")%> 
<%} %> 
</div> </body> 
</html> 

我在做什么错?

回答

0

当我做下面的工作原理

{新SelectListItem {文本= “1”,值= “1”}, 新SelectListItem {文本= “2”,值= “2”}, new SelectListItem {Text =“3”,Value =“3”}}, “Select List”,** new {onchange =“$(this).parents('form')。submit()”**}) %>

我很奇怪,为什么$()函数不工作..

+0

我不知道(我的回答的持久现已删除)。当我将您提供的代码(在原始问题中)复制并粘贴到我自己现有的ASP.NET MVC 2项目之一中时,它就像冠军一样工作。甚至没有改变它上面的角色。 :) **你是否真的复制并粘贴了问题代码,或者可能已经解释了它?**(可能会有另一个脚本与事物搞砸,或者可能存在 - 希望不是 - 多个元素与' selectOptions' id,这可能会混淆jQuery选择引擎?) – 2010-07-06 20:15:48

+0

为什么脚本标记jquery不起作用,而内联代码运行完美。 – TrustyCoder 2010-07-06 20:32:47

+0

我不知道 - selectOptions有多个ID吗? (虽然这不应该引起问题;选择器应该只返回第一个。)是否有可能另一个脚本搞砸了?你确定在你的实际代码中的所有大写等,在jQuery是正确的?如果您通过Firebug运行该页面,您是否在任何时候都看到Javascript错误? (你是否通过Firebug的Javascript调试器来运行页面?) – 2010-07-06 20:40:00