anglo0072 Ответов: 2

избавьтесь от автогенерированного события javascript в asp.net


в asp.net appliaction я получаю автогенерированное событие javascript, которое мне действительно не нужно. у меня есть кнопка login из-за этого автогенерированного события javascript мой клиент не может войти в систему, которая генерируется автоматически, и я действительно не знаю, почему это происходит

Asp.net кнопка в файле custome user Control .ascx

<asp:Button ID="cmdLogin" runat="server" Text="Login" CssClass="Footer_button" 
 CommandName="login"  CausesValidation="True" />


Как вы можете видеть, в кнопке вообще нет никакого события, но когда я запускаю свое приложение в любом браузере, оно визуализирует автогенерированное событие

Автогенерированное событие javascript

<input name="ctl00$header1$slidingpanel1$Login1$cmdLogin" value="Login" id="ctl00_header1_slidingpanel1_Login1_cmdLogin" class="Footer_button" type="submit"
onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$header1$slidingpanel1$Login1$cmdLogin", "", true, "", "", false, false))">


я хочу избавиться от этого автогенерированного события onclick, а также от рендеринга события onsubmit в aspnetform в браузере

<form name="aspnetForm" method="post" action="default.aspx" onsubmit="javascript:return WebForm_OnSubmit();" id="aspnetForm">

я хочу избавиться от этого автогенерированного события javascript пожалуйста помогите мне решить эту проблему так как другие также могут иметь эту проблему заранее спасибо

Timberbird

Эй, если вам нужна простая кнопка, которая не вызывает обратной связи, зачем использовать ее ASP.NET пуговица? Воспользуйся Управление HtmlInputButton или вставьте обычную html-разметку типа <input type="button" value="Login" /> .
Однако я считаю, что если вы реализуете функциональность входа в систему, то требуется обратная связь (поскольку обычно логика входа выполняется на сервере). И в этом случае JavaScript вставляется правильно, так как ваша кнопка является серверным элементом управления, который дополнительно имеет атрибуты CommandName и CausesValidation

Sergey Alexandrovich Kryukov

Почему вы позволили чему-то автоматически генерироваться без вашего согласия? Во всяком случае, его всегда можно удалить (скажем, вручную), но всегда лучше сделать шаг назад.
—СА

2 Ответов

Рейтинг:
2

Member 13996309

Проверьте эту ссылку, чтобы узнать больше
Как мне избавиться от DoPostBackWithOptions? | На форумах ASP.NET [^]


OriginalGriff

Хотя я аплодирую вашему стремлению помогать людям, это хорошая идея придерживаться новых вопросов, а не 6-летних. После такого количества времени маловероятно, что оригинальный плакат вообще заинтересован в проблеме больше!
Ответы на старые вопросы можно рассматривать как охоту за репостами, которая является формой злоупотребления сайтом. Более триггерные счастливые среди нас начнут процесс запрета вас с сайта, если вы не будете осторожны. Придерживайтесь новых вопросов, и все будет хорошо.

Рейтинг:
19

anglo0072

Acutlly я использую Asp.net вход в систему управления, и это событие authenticate с кодом, поэтому я не нужно ставить событие click на кнопку, потому что эта кнопка под логином контроля и haddling имя Входа проверки подлинности по asp.net вход в систему управления мероприятия "Проверка подлинности" так что не нужно ставить какое-либо событие на кнопку, но вход в систему управления из кода позади

<asp:login id="Login1" runat="server" xmlns:asp="#unknown">
                <layouttemplate>
                    <label for="log">User Name: </label>
                    <asp:textbox id="Username" runat="server"></asp:textbox>

                    <label for="pwd">Password: </label>
                    <asp:textbox id="password" textmode="Password" runat="server"></asp:textbox>
                  // this is the Button where javascript event were rendered in browsre
                    <asp:button id="cmdLogin" runat="server" text="Login" commandname="login">
        CssClass="Footer_button" />                       
                </asp:button></layouttemplate>
 </asp:login>



Этот элемент управления для входа в файле контроля таможенные .ascx-файл, который я зарегистрировал этот контроль по умолчанию.aspx-страницы также есть еще таможенные управления в умолчанию разделе, который я зарегистрировал в состоянии дефолта.aspx-страницы, как показано ниже

<![CDATA[<%@ Page Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false"

    CodeFile="Default.aspx.vb" Inherits="_Default" Title="Minato Cars - Home Page" %>
<![CDATA[<%@ Register Src="~/Controls/CallRequest.ascx" TagName="CallRequest" TagPrefix="psc" %>
<![CDATA[<%@ Register Src="~/Controls/RequestACar.ascx" TagName="RequestACar" TagPrefix="psc" %>
<![CDATA[<%@ Register Src="~/Controls/Skype.ascx" TagName="Skype" TagPrefix="psc" %>
<![CDATA[<%@ Register Src="~/Controls/EmailInfo.ascx" TagName="EmailInfo" TagPrefix="psc" %>
<![CDATA[<%@ Register Src="~/Controls/QuickContact.ascx" TagName="QuickContact" TagPrefix="psc" %>
<![CDATA[<%@ Register Src="~/Controls/SearchByVehicleType.ascx" TagName="SearchByVehicleType" TagPrefix="psc" %>
<![CDATA[<%@ Register Src="~/Controls/SearchbyMake.ascx" TagName="SearchByMake" TagPrefix="psc" %>



(это главное, что нужно понять)

у меня было немного asp.net проверка в CallRequest.ascx & в QuickContact.ascx Custome Control. и страница по умолчанию использует Masterpage..

Как мы все знаем, когда мы используем Asp.net проверка он визуализирует событие javascript _dopostback в браузере с событием onsubmit в форме или в asp.net aspnetform и некоторое время он также визуализирует событие onclick на кнопке, тип которой является onsubmit (type=onsubmit of button), поэтому я получал автогенерированное событие javascript из-за asp.net проверка. я обработал его с помощью jQeury Server & client side validation без формы, и теперь он работает..