Uncaught ReferenceError : e n'est pas défini dans HTMLInputElement.onclick
P粉012875927
P粉012875927 2023-09-12 14:10:18
0
1
629

J'obtiens cette erreur lorsque e est un MouseEvent.

Le code HTML impliquant l'événement de clic de case à cocher en question ressemble à ceci :

<ItemTemplate>
    <tr style="border-top:1px solid  #adadad;border-bottom:1px solid  #adadad;">
        <td>
            <asp:HiddenField runat="server" id="hfOptionProductID" value='<%#Eval("Key.ProductID")%>' />
            <asp:HiddenField runat="server" id="hfOptionModelNumber" value='<%#Eval("Key.BTModel")%>' />
            <asp:HiddenField runat="server" ID="hfAssetId" value='<%#Eval("Value.AssetID")%>' />
            <p>
               <%#Eval("Key.Name")%><asp:CheckBox runat="server" id="chbxOption" class="chkOlcs" onclick="chkOlcs_onClick(e);"/>
            </p>
            <asp:Panel runat="server" ID="pnlOlcs" class="pnlOlcs" Visible="False">
                <asp:CheckBox runat="server" ID="chkDomain" class="chkDomain" onclick="chkDomain_onClick(e)" Text="I want to link my license to a specific domain and its subdomains." /><br/>
                <asp:TextBox runat="server" ID="txtDomain" class="txtDomain"  style="padding: 3px 5px; text-align: center; width: 200px;" placeholder="Enter a domain name"  ValidationGroup="OptionValidationGroup" disabled />
                <asp:Label runat="server" ID="lblDomainError" class="lblDomain" Visible="False" style="color: red;"/><br/>
                <asp:CheckBox runat="server" ID="chkAny" class="chkAny" onclick="chkAny_onClick(e)" Text="I do not want to link my license to a specific domain."/><br/>
            </asp:Panel>
            <br />
       </td>               
   </tr>     
</ItemTemplate>

Dans le HTML ci-dessus, voici la partie problématique :

<%#Eval("Key.Name")%>< /strong>

Pour une raison inconnue, lorsque je débogue et exécute ce programme dans Visual Studio dans le navigateur Edge, j'obtiens une erreur.

D'une manière ou d'une autre, e devient indéfini et n'atteint jamais l'appel de fonction Javascript.

Voici la définition de la fonction Javascript :

function chkOlcs_onClick(e) {
    var chkOlcs = $('#' + e.target.id);
    var pnlOlcs = chkOlcs.parent().parent().parent().find('.pnlOlcs');

    var isChecked = e.target.checked;
    if (isChecked) {
        pnlOlcs.show();
    } else {
        pnlOlcs.hide();
    }
}

Maintenant, pour aggraver les choses : lors de l'exécution à partir d'une page Web déployée, aucune erreur ne se produit.

J'ai lu presque toutes les questions similaires liées à cette erreur, mais aucune ne semble s'appliquer. Je suis ouvert à toute aide.

P粉012875927
P粉012875927

répondre à tous(1)
P粉785522400

(À moins qu'ASP.NET fasse quelque chose de bizarre (je n'utilise pas ASP.NET et vous n'avez pas marqué la question comme concernant ), avoir onclick 属性)e n'est pas un événement de souris. Ce n'est pas défini. Le message d'erreur indique tu es ça

事件 est un événement de souris mais est obsolète.

Il est recommandé d'utiliser addEventListener code>addEventListener code> 而不是内在事件属性(如 onclick au lieu des propriétés intrinsèques de l'événement (telles que onclick).

element.addEventListener('click', chkOlcs_onClick) Passera l'événement souris comme premier paramètre.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal