【发布时间】:2010-03-23 15:51:15
【问题描述】:
这是我在 ASP.NET MVC 中的看法。
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Administration.Master" Inherits="System.Web.Mvc.ViewPage" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="HeadContent" runat="server">
<script type="text/javascript">
var ddlContentTypes;
$(document).ready(function () {
ddlContentTypes = $("#ContentTypes");
ddlContentTypes.bind("change", loadCreate);
loadCreate();
});
function loadCreate() {
var typeId = $("#ContentTypes option:selected").val();
$.get('~/' + typeId + '/Create', function (data) {
$("#CreateForm").html(data);
});
$("fieldset input").each(function (index, item) {
$(item).attr("disabled", true);
});
}
</script>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="MainContent" runat="server">
<h2>
<%=Resources.Localize.CreateWidget %></h2>
<p>
<% Html.RenderPartial("ContentTypeSelector"); %></p>
<div id="CreateForm">
</div>
</asp:Content>
如您所见,它加载了一些 HTML(实际上是用户控件)并将其添加到 CreateForm div。这实际上工作正常。
问题是这样的
$("fieldset input").each(function (index, item) {
$(item).attr("disabled", true);
});
从不运行。 fieldset 标记在响应中,因此您在这里看不到它,但它就在那里 - 一切都很好地返回(我检查了 Firebug)。
为什么上面两行JS一直没有运行或者没有任何效果?
【问题讨论】:
-
很难说没有看到呈现的 HTML。你能补充一下吗?
-
您有多个问题需要处理。结合你到目前为止得到的两个答案,你将朝着正确的方向前进。
标签: javascript jquery asp.net-mvc