asp:Content+getEl..ById:nie działa skrypt z pliku js

0

Witam.
Piszę stronę w Visual Web Developer 2010 + C#. Korzystam z MasterPage.
Dopóki skrypty js były w kodzie strony to działały. Po umieszczeniu w pliku JScript.js przestały działać (obiekt jest pusty lub niezdefiniowany):

function IsNotAkcept(source, args) {   // spr CheckBox
//    var elem = document.getElementById('<%= chkAkcept.ClientID %>'); to też nie działa
    var elem = document.getElementById('chkAkcept');
    if (elem.checked) {
        args.IsValid = true; }
    else {
        args.IsValid = false; } }

a tu strona

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <script src="JScript.js" type="text/javascript"></script>
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <asp:CheckBox ID="chkAkcept" runat="server" />
    <asp:CustomValidator ID="CustomValidator1" runat="server" 
        ErrorMessage="Nie wybrano CheckBox" ClientValidationFunction="IsNotAkcept"></asp:CustomValidator>
    <br />
    <asp:Button ID="Button1" runat="server" Text="Button" />
</asp:Content>

Jak zmienić skrypt (getElementById), aby zadziałał?
Wielkie Dzięki za pomoc.

0

pomogło:
var elem = document.getElementById('ContentPlaceHolder1chkAkcept');

a czy da się coś typu 
<code class="c#">    var elem = document.getElementById('<%= FindControl("ContentPlaceHolder1").FindControl("chkAkcept").ClientID %>');

???
Ekspertów delikatnie proszę o pomoc.

0

Nie da się tak zrobić, bo <%= jest interpretowany przez ASP.NET, więc ten kawałek kodu musiałby być przez ASP.NET generowany, czyli nie może być w oddzielnym pliku.

Ogólnie - ASP.NET generuje kod HTML, w którym nie ma takich rzeczy jak asp:Content w ogóle, więc dlatego twój skrypt nie miał prawa działać.

1 użytkowników online, w tym zalogowanych: 0, gości: 1