이것은 ASP.NET MVC에서의 내보기입니다.jQuery에서 JavaScript가 생성 된 코드는 호출되지 않습니다.
당신이 볼 수 있듯이<%@ 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을 보지 않아도 말하기 어렵습니다. 그것을 추가 할 수 있습니까? – hunter
여러 문제를 처리해야합니다. 지금까지 얻은 두 가지 답변을 결합하면 올바른 방향으로 나아갈 수 있습니다. –