Benutzer-Werkzeuge

Webseiten-Werkzeuge


Plugin installed incorrectly. Rename plugin directory 'swiftmail.backup' to 'swiftmail'.
software:tim:smartform:copy_on_change

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
software:tim:smartform:copy_on_change [2014/01/30 12:38]
neven.micanovic angelegt
software:tim:smartform:copy_on_change [2021/07/01 09:52] (aktuell)
Zeile 1: Zeile 1:
-====== Inhalt eines input-Feldes in einen href kopieren ​=======+====== Inhalt eines input-Feldes in einen Link umwandeln ​======= 
 +  
 +Mit dieser Funktion ist es möglich, die Eingabe aus einem Input-Feld in einen Link umzuwandeln und diesen nachfolgenden T!M-Anwendern zur Verfügung zu stellen. 
 +Hierfür muss in der Smartform die initMethode angegeben werden, welche in der custom.js aufgerufen wird. 
  
-Mit dieser Funktion ist es möglich die Eingabe aus einem Input-Feld, per jQuery-onChangeMethode,​ als Link darzustellen. 
-Hierfür muss in der Smartform die initMethode angegeben werden, welche in der custom.js aufgerufen wird. 
-{{ :​software:​tim:​smartform:​onchangehref.png?​200|}} 
 <​code>​ <​code>​
 <?xml version="​1.0"​ encoding="​utf-8"?>​ <?xml version="​1.0"​ encoding="​utf-8"?>​
Zeile 10: Zeile 10:
    <​tr>​    <​tr>​
     <td>     <td>
-     <​input type="​text"​ name="input_pfadangebot" class="​input_pfadangebot" id="input_pfadangebot" />+     <​input type="​text"​ name="input_pfad" class="​input_pfad" id="input_pfad" />
     </td>     </td>
    </​tr>​    </​tr>​
    <​tr>​    <​tr>​
     <td>     <td>
-     <​a ​href="" ​target="​_blank"​ name="lnk" id="lnk" style="​text-decoration:​none;"​></a>+     <a target="​_blank"​ name="link" id="link" style="​text-decoration:​none;"/>​
     </td>     </td>
    </​tr>​    </​tr>​
Zeile 22: Zeile 22:
 </​code>​ </​code>​
  
-Nun muss in der custom.js diese initMethode angelegt werden. ​Daraufhin ​muss lediglich noch auf das input-Feld ​die onChange-Methode gelegt ​werden und die Eingabe an den Link (ahref) ​übergeben werden.+Nun muss in der custom.js diese initMethode angelegt werden. ​Darin muss jq eingebunden werden, die onChange-Methode ​auf das input-Feld ​gebunden ​werden und die Eingabe an den Link übergeben werden. Zusätzlich wird in der Funktion überprüft,​ ob die Eingabe bereits '​http:/​ / ' oder '​https:/​ /' enthält. Falls dies nicht zutrifft, wird dem Link "​http:/​ /" vorangestellt (ohne Leerzeichen zwischen den Schrägstrichen).
  
 <​code>​ <​code>​
 gadget.functions.initChangeHref=function(){ gadget.functions.initChangeHref=function(){
  
-     jq= (this.form.ownerDocument.defaultView!=null) ? this.form.ownerDocument.defaultView.jQuery :     + jq= (this.form.ownerDocument.defaultView!=null) ? this.form.ownerDocument.defaultView.jQuery : this.form.ownerDocument.parentWindow.jQuery;​ 
-      +  window['​entity'​] = this.entity;​ 
-     this.form.ownerDocument.parentWindow.jQuery;​ +   
- + jq('#input_pfad'​).change(function(){ 
-     ​jq('#input_pfadangebot'​).change(function(){ + var atag= jq("#link"​)[0];​ 
- + if(this.value.indexOf('​http://'​)==-1 && this.value.indexOf('​https://'​)==-1){ 
-      ​var atag= jq("#lnk"​)[0];​ + atag.href '​http://'​ + jq.trim(this.value)
-      atag.innerHTML ​= this.value;​ + atag.innerHTML ​atag.href;​ 
-      atag.href="https://" ​+ this.value;​ + window['​entity'​].setValue(atag.id,​ 'http://' ​jq.trim(this.value)); 
-     ​});+  
 +
 + else{ 
 + atag.href = jq.trim(this.value);​ 
 + atag.innerHTML = atag.href;​ 
 + window['​entity'​].setValue(atag.id,​ jq.trim(this.value));​ 
 +
 + window['​entity'​].setValue(this.id,​ this.value);​ 
 + window['​entity'​].mergeLocal(true)
 + });
 } }
 </​code>​ </​code>​
software/tim/smartform/copy_on_change.1391081917.txt.gz · Zuletzt geändert: 2021/07/01 09:56 (Externe Bearbeitung)