Javascript

Aus XmasWiki
Wechseln zu: Navigation, Suche

JQuery

Select Listen

val() liefert den Rückgabewert und text() den Anzeigewert.

$('#P123_LISTE :selected').val();
$('#P123_LISTE :selected').text();

Beispiele: http://marcgrabanski.com/articles/jquery-select-list-values

Abfrage der URL und Instanz

Quelle: http://stackoverflow.com/questions/406192/get-current-url-in-javascript

http://www.refulz.com:8082/index.php#tab2?foo=789
Property    Result
------------------------------------------
host        www.refulz.com:8082
hostname    www.refulz.com
port        8082
protocol    http
pathname    index.php
href        http://www.refulz.com:8082/index.php#tab2
hash        #tab2
search      ?foo=789
var x = $(location).attr('<property>');

Select Listen mit JSON

 // creating JSON "text" : "return value"
 var l_options_json = { "please select" : "",
                        "Text"          : "1"
                      }
 // getting JSON from Process and Parsing it
 var l_options_json = jQuery.parseJSON(get.get());
 // Chosing selectlist
 var l_select = $('#' + item_name);    
 // Using differenz jQuery versions
 if(l_select.prop) {
   var l_options = l_select.prop('options');
 }
 else {
   var l_options = l_select.attr('options');
 }    
 // delete old options
 l_select.empty();    
 // adding new elements
 $.each(l_options_json, function(text, val) {
   l_options[l_options.length] = new Option(text, val);
 });

Test your JSON Format with http://jsonformatter.curiousconcept.com/

Modal Dialog

Integration in APEX

Button erstellen mit folgender Eigenschaft.

URL Target: javascript:openNeueVersionDlg();;

Danach Region erstellen mit folgenden Eigesnschaften

Identification
 Type: HTML Text
User Interface
 Template: No Template (oder ein Template erstellen, welches ein "div" besitzt, auf welches nachher zugegriffen werden kann)
Source
 Region Source: Text welcher im Dialog angezeigt werden soll. Dabei kann auch HTML Syntax verwendet werden.
Attributes
 dlgNeueVersion
Header and Footer
 Region Footer
   <script type="text/javascript">
   function openNeueVersionDlg() {
       var $popupNeueVersion = $('#dlgNeueVersion');
       $popupNeueVersion.dialog({

autoOpen: false, title: 'Neue Version', position: 'center', modal: true,

                width: 350,

height: 170,

                resizable: false,

buttons: { "OK": function() { $(this).dialog("close"); apex.submit('EDIT'); }, "Abbrechen" : function() { $(this).dialog("close"); return false; } } });

   $popupNeueVersion.dialog('open');
   $(":button:contains('Abbrechen')").focus();
   }
  </script>

Beispiele

Fenster öffnen

Auf Button: javascript:test(); Als Javascript <script language="javascript" type="text/javascript"> </script>

Browserweiche

<script language="JavaScript">
< !--
if (navigator.appName.indexOf("Opera") != -1) {
   window.location = "opera-browser.html";
} else if (navigator.appName.indexOf("Explorer") != -1) {
   window.location = "microsoft-browser.html";
} else if (navigator.appName.indexOf("Netscape") != -1) {
   window.location = "netscape-browser.html";
} else {
   window.location = "anderer-browser.html";
}
//-- >
</script>

Script zur Stellenbeschränkung von Textfeldern

function limit_chars(textfield, limit) {
 if (textfield.value.length > 4) {
  textfield.value = textfield.value.substring(0, 4);
}


Um das Script aufzurufen muss beim entsprechenden Textfeld folgender Eintrag gemacht werden:
onKeyUp="limit_chars(this, 4)"
Das sollte dafür sorgen, dass das entsprechende Feld maximal Eingaben von 4 Stellen zulässt.