Ankündigung

Einklappen
Keine Ankündigung bisher.

Optionsfeld auf Ansichtsseite soll readonly sein

Einklappen
X

Optionsfeld auf Ansichtsseite soll readonly sein

Einklappen
  • Filter
  • Zeit
Alles löschen
neue Beiträge

  • Optionsfeld auf Ansichtsseite soll readonly sein

    Hallo zusammen,

    ich bin neu hier im Forum, da ich nun auch mit Intrexx Webseiten programmiere darf.
    Und jetzt begegnen mir schon die ersten Fragen bei der Arbeit.

    Konkret :
    Wie steuere ich ein Optionsfeld auf einer Ansichtsseite so, daß das Optionsfeld nicht verändert werden kann?

    Zum Hintergrund :
    Ich soll den Inhalt einer Eingabeseite inhalts- und möglichst aussehensgleich als Ansichtsseite für den jeweiligen Benutzer darstellen. Wenn ich nun ein Optionsfeld in einer Ansichtsseite automatisch einbinden lasse, wird mir nur der Wert der gesetzten Option angezeigt, nicht aber der beschreibende Text. Erstelle ich nun ein Optionsfeld mit Verknüpfung auf das zugehörige Datenfeld, wird mir die richtige Option ausgewählt, das Optionsfeld läßt sich aber noch verändern. Die 'neue' Auswahl zwar nicht gespeichert, kann aber zur Verwirrung beitragen.
    Die Werte des Optionsfeldes sind Integers, da mit Ihnen im Eingabeformular noch weiter gearbeitet wird.

    Ich bin mir sicher, daß sich irgendwo ein kleiner Schalter oder eine kleine Einstellung versteckt, wenn man nur wüßte wo und wie.

    Vielen Dank für Eure Hilfe

    spelaeus










  • #2
    Falls es tatsächlich keine Konfigurationsmöglichkeit dazu geben sollte (ich erinnere mich an keine), dann bliebe evtl. JavaScript mit etwas in der folgenden Art?

    Code:
    document.getElementById("ID").disabled = true;

    Kommentar


    • #3
      Hallo Reiner,

      mit

      var rbVermutet = getElement("9E...); /*Vermutet radiocontrol*/
      var rbFestgestellt = getElement("B5..."); /*Festgestellt radiocontrol*/

      rbVermutet.disabled = true;
      rbFestgestellt.disabled = true;

      stellt sich der gewünschte Effekt ein.

      wenn ich jedoch folgende Vorgehensweise auf das Optionsfeld im Gesamten anwende :

      var aoptGrpVerursacher = getElement("58..."); /*aoptGrpVerursacher radiocontrolgroup*/
      aoptGrpVerursacher.disabled = true;

      oder um das Optionsfeld noch ein eigene Gruppierung lege und dann 'disabled' dann auf diese Gruppierung anwende sind die beiden Optionen nach wie vor aktiv.
      Ich möchte, wenn möglich, das ganze Optionsfeld auf einmal inaktiv setzen, da auch mehrere Optionsfelder vorkommen, die 'Ja' und 'Nein' enthalten. Ich erhoffe mir dadurch eine effektivere Codierung, da nicht jede Option einzeln gesetzt werden muß und eine einfachere Auswahl der Referenzen, da für gleichlautende Optionen der richtige Radiobutton sich nur durch Trial&Error sich finden läßt.

      Vielen Dank.

      spelaeus



      Kommentar


      • #4
        <radiocontrolgroupGUID> mit der GUID des Optionsfeldes ersetzen
        Code:
        $(".guid-<radiocontrolgroupGUID>").prop( "disabled", true );

        Kommentar


        • #5
          Hallo tobiz,

          irgendwas mache ich noch falsch :

          var aoptGrpVerursacher = getElement("583..."); // aoptGrpVerursacher
          $(".guid-583..").prop( "disabled", true );

          syntaktisch meckert er nicht, aber die einzelnen Optionen sind nicht mehr inaktiv.

          Vielen Dank.

          spelaeus

          Kommentar


          • #6
            Tut mir leid, die vorgeschlagene Lösung war nicht besonders toll und funktioniert nur unter Intrexx 19.03. So sollte es auch in Intrexx 18.03 funktionieren

            Code:
            $('input[name="radiocontrolgroup081858ED"]').prop( 'disabled', true );
            ...Name des Optionsfeldes anpassen...

            Kommentar


            • #7
              Hallo tobiz,

              so scheint's auch mit einer älteren Version zu funktionieren.

              Vielen Dank für Eure Unterstützung

              spelaeus

              Kommentar

              Lädt...
              X