Deaktivieren eines Dropdown-Listenelements jquery funktioniert nicht

8

Ich möchte das Dropdown-Listenelement mithilfe von jquery deaktivieren. Der Indexwert ist -1 und der Wert ist ------- Intern -------. Ich habe nacheinander die folgenden Syntaxen ausprobiert (Die Lösungen waren die Antworten für ähnliche Fragen). Keiner von ihnen arbeitet. Ich benutze IE8.

%Vor%

Designer: Aspx

%Vor%

Aspx.cs

%Vor%     
Manoj Nayak 10.04.2015, 11:09
quelle

8 Antworten

3

Ich habe each verwendet und es hat für mich funktioniert: Ссылка

%Vor%

Bitte beachten Sie, dass ich in dieser Lösung diese anstelle von $ (this) verwendet habe, was bedeutet, dass ich die deaktivierte Option von javascript

verwendet habe     
renakre 10.04.2015 11:48
quelle
3

Erstens kann ASP.NET die gerenderte Client-ID in Ihrem ChildOrganizationDropDownList-Steuerelement ändern. Um dies zu verwalten, sollten Sie ClientIDMode auf Static:

setzen %Vor%

(Siehe MSDN Library .) Jetzt wissen Sie, dass Sie dieses Steuerelement mit dem jQuery-Selektor $("#ChildOrganizationDropDownList") finden können.

Zweitens bin ich mir nicht sicher, ob Ihr JavaScript auf das Laden des DOM wartet. Wenn es zu früh feuert, wird es nichts finden (da es noch nicht geladen ist). Verwenden Sie $(document).ready(handler) oder die Kurzschrift $(handler) .

Nun könnte ein JavaScript, das alle Optionen mit dem Wert "-1" in ChildOrganizationDropDownList deaktiviert, folgendermaßen aussehen:

%Vor%     
mgrim 14.04.2015 08:01
quelle
2

Versuchen Sie Folgendes: -

Stellen Sie sicher, dass Sie den Code in document.ready wie folgt einfügen

%Vor%     
sharique ansari 14.04.2015 06:56
quelle
1

Obwohl ich Ihnen raten würde, lieber zwei aktuelle IE-Versionen zu unterstützen, anstatt IE8 zu unterstützen.

Ich habe den folgenden Code getestet und es funktioniert gut.

%Vor%

Da Sie IE 8 unterstützen, sollten Sie eine jquery-Version einschließen, die & lt; jQuery 2.x Ссылка

    
Robin Hosanee 15.04.2015 12:48
quelle
1

Wenn Sie nicht möchten, dass der Benutzer diese bestimmte Option auswählt, warum nicht ausblenden, anstatt sie zu deaktivieren?

%Vor%

Oder noch besser entfernen Sie es bei einem Klick auf das Objekt,

%Vor%

Sie können es also nicht auswählen.

    
Dan 20.04.2015 16:19
quelle
1

Das Folgende funktionierte für mich

%Vor%

Arbeiten JS Geige Ссылка

Sie können auch versuchen, den Wert in einfache Anführungszeichen zu setzen.

%Vor%     
Pavan 21.04.2015 06:20
quelle
1

Wenn der Wert -1 niemals auf der gesamten Website ausgewählt werden kann, dann können Sie es einfach so machen:

%Vor%

Ansonsten können Sie dies tun:

  1. Wickeln Sie Ihr Dropdown in div -Tags mit einem id (oder Sie können auch ein eindeutiges class definieren und verwenden Sie es für alle Dropdowns mit diesen Eigenschaften):

    %Vor%
  2. Wählen Sie alle Optionen in div mit value="-1" aus und deaktivieren Sie sie:

    %Vor%

    oder

    %Vor%

    und wenn Sie über die Klasse auswählen möchten:

    %Vor%
maraca 20.04.2015 21:33
quelle
1

In ASP.net Webform Architektur ist auch wichtig, wo Sie Ihre jQuery / Javascript schreiben.

wenn Sie in Ihrer aspx-Seite ein Skript hinzufügen, in dem die Kontrolle stattfindet. Sie können '<%= Control.ClientID %>' verwenden, um die Kontrolle zu erhalten. Wenn Sie Ihren Code in aspx-Seite, aber in Kopfzeile platzieren und Ihr Steuerelement in Ihrer untergeordneten Seite ist, können Sie

verwenden %Vor%

Wenn Sie eine separate js-Datei haben, müssen Sie ClientIDMode="Static" für die Steuerung festlegen und Ihre ID zuweisen (aber stellen Sie sicher, dass diese ID nicht für andere Steuerelemente verwendet werden darf und auf der Seite eindeutig sein muss.).

    
govinda 17.04.2015 05:33
quelle

Tags und Links