ASP.NET-Managed Id and Name Attributes for HTML Elements

I have a problem in my C # ASP.NET application where the id and name tags change at runtime with the prefix "MainView_" and "MainView $" respectively. So my code is:

<asp:Button ID="OKToContinueCheckInButton" runat="server" CausesValidation="False" Visibility="false" Style="display: none" OnClick="btnOKToContinueCheckIn" />

<script type="text/javascript">
<!--
    var answer = confirm("Some Warning");
    if (answer)
        document.getElementById('OKToContinueCheckInButton').click();
// -->
</script> 

becomes:

<input type="submit" name="MainView$OKToContinueCheckInButton" value="" id="MainView_OKToContinueCheckInButton" Visibility="false" style="display: none" />

<script type="text/javascript">
<!--
    var answer = confirm("Some Warning");
    if (answer)
        document.getElementById('OKToContinueCheckInButton').click();
// -->
</script>

getElementID () returns null since the name has changed. Can someone tell me why this is happening, and if there is a way to disable it from changing the id and name values. Thanks!

-Sephrial

+5
source share
9 answers

I think this will help you ...

<script type="text/javascript">
<!--
    var answer = confirm("Some Warning");
    if (answer)
        document.getElementById('<%= OKToContinueCheckInButton.ClientID %>').click();
// -->
</script>

This is the part that does the trick.

<%= OKToContinueCheckInButton.ClientID %>
+10
source

This is a fundamental part of the Asp.Net Forms model.

, , , , ..

. , JQuery , .

+3

, :

document.getElementById(<%= OKToContinueCheckInButton.ClientID %>).click();

:

document.getElementById('<%= OKToContinueCheckInButton.ClientID %>').click();
+2
<asp:Button ID="OKToContinueCheckInButton" runat="server" CausesValidation="False" Visibility="false" Style="display: none" OnClick="btnOKToContinueCheckIn" />

<script type="text/javascript">
<!--
    var answer = confirm("Some Warning");
    if (answer)
        document.getElementById(<%=OKToContinueCheckInButton.ClientID %>).click();
// -->
</script>
+1

script . script .

System.Text.StringBuilder script = new System.Text.StringBuilder();
script.Append("var answer = confirm('Some Warning');");
script.Append("if (answer)");

// The client ID will be what is put in the browser so it will find it.
script.AppendFormat("document.getElementById('{0}').click();", this.btnSomeButton.ClientID);

// Hook this up to the button
this.btnSomeButton.OnClientClick = script.ToString();
+1

ClientID :

<asp:Button ID="OKToContinueCheckInButton" runat="server" CausesValidation="False" Visibility="false" Style="display: none" OnClick="btnOKToContinueCheckIn" />

<script type="text/javascript">
<!--
    var answer = confirm("Some Warning");
    if (answer)
        document.getElementById(<%=OKToContinueCheckInButton.ClientID%>).click();
// -->
</script>
+1

jQuery, , . $= ( ), noe:

if (answer)
  $("a[id$='MainView_OKToContinueCheckInButton']:first").click();

jQuery

+1

, , , . , , , HTML "_" "$". , document.getElementById(<% = OKToContinueCheckInButton.ClientID% > ). Click();

<input type="submit" name="MainView$OKToContinueCheckInButton" value="" id="MainView_OKToContinueCheckInButton" Visibility="false" style="display: none" />

<script type="text/javascript">
<!--
    var answer = confirm("Some Warning");
    if (answer)
        document.getElementById(MainView_OKToContinueCheckInButton).click();
// -->
</script>
0

All Articles