<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
> <channel><title>mysrc.de &#187; fehlersuche</title> <atom:link href="http://www.mysrc.de/tag/fehlersuche/feed/" rel="self" type="application/rss+xml" /><link>http://www.mysrc.de</link> <description>- jQuery, MooTools, HTML5, AJAX</description> <lastBuildDate>Tue, 14 Jun 2011 08:24:25 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.0.1</generator> <item><title>Praxistip: Output Element des jQuery Validate Plugin ändern</title><link>http://www.mysrc.de/jquery/praxistip-output-element-des-jquery-validate-plugin-andern/</link> <comments>http://www.mysrc.de/jquery/praxistip-output-element-des-jquery-validate-plugin-andern/#comments</comments> <pubDate>Fri, 04 Sep 2009 19:32:05 +0000</pubDate> <dc:creator>Stefan Huissel</dc:creator> <category><![CDATA[jQuery]]></category> <category><![CDATA[fehlersuche]]></category> <category><![CDATA[Forms]]></category> <category><![CDATA[Formulare]]></category> <category><![CDATA[Plugin]]></category> <guid
isPermaLink="false">http://www.mysrc.de/?p=854</guid> <description><![CDATA[Das allseits bekannte jQuery Plugin um Formularfelder zu validieren funktioniert im Standardszenarion sogut wie problemlos. Schwieriger wird es schon wenn mehrere Plugins auf ein Formular angewendet werden, bei denen die Plugins eigene DOM-Elemente hinzufügen. Beispielsweise jqTransform Glücklicherweise bietet das validate Plugin dafür eine wunderbare Funktion, nämlich errorPlacement. Die Funktion sieht so aus: ?View Code JAVASCRIPT1 [...]]]></description> <content:encoded><![CDATA[<p>Das allseits bekannte <a
href="http://docs.jquery.com/Plugins/Validation" target="blank">jQuery Plugin</a> um <a
href="http://www.mysrc.de/jquery/jquery-formulare-validieren-ein-uberblick/">Formularfelder zu validieren</a> funktioniert im Standardszenarion sogut wie problemlos.</p><p>Schwieriger wird es schon wenn <strong>mehrere Plugins</strong> auf ein Formular angewendet werden, bei denen die Plugins eigene DOM-Elemente hinzufügen. Beispielsweise <a
href="http://www.dfc-e.com/metiers/multimedia/opensource/jqtransform/" target="blank">jqTransform</a></p><p>Glücklicherweise bietet das validate Plugin dafür eine wunderbare Funktion, nämlich <strong>errorPlacement</strong>.<br
/> Die Funktion sieht so aus:</p><div
class="wp_codebox_msgheader"><span
class="right"><sup><a
href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span
style="color: #99cc00">?</span></a></sup></span><span
class="left"><a
href="javascript:;" onclick="javascript:showCodeTxt('p854code4'); return false;">View Code</a> JAVASCRIPT</span><div
class="codebox_clear"></div></div><div
class="wp_codebox"><table><tr
id="p8544"><td
class="line_numbers"><pre>1
2
3
</pre></td><td
class="code" id="p854code4"><pre class="javascript" style="font-family:monospace;"> errorPlacement<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>error<span style="color: #339933;">,</span> element<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
     error.<span style="color: #660066;">appendTo</span><span style="color: #009900;">&#40;</span> element.<span style="color: #660066;">TRAVERSINGFUNKTION</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span></pre></td></tr></table></div><p>Nehmen wir ein Formular:</p><div
class="wp_codebox_msgheader"><span
class="right"><sup><a
href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span
style="color: #99cc00">?</span></a></sup></span><span
class="left"><a
href="javascript:;" onclick="javascript:showCodeTxt('p854code5'); return false;">View Code</a> HTML</span><div
class="codebox_clear"></div></div><div
class="wp_codebox"><table><tr
id="p8545"><td
class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td
class="code" id="p854code5"><pre class="html" style="font-family:monospace;">&lt;form action=&quot;somescript.php&quot; id=&quot;form&quot; method=&quot;get&quot;&gt;
   &lt;input type=&quot;text&quot; name=&quot;user&quot;&gt;
   &lt;label&gt;&lt;label&gt;
   &lt;input type=&quot;text&quot; name=&quot;pw&quot;&gt;
   &lt;label&gt;&lt;label&gt;
&lt;/form&gt;
 &lt;div id=&quot;error&quot;&gt;&lt;/div&gt;</pre></td></tr></table></div><p>Per Default wird vom validate Plugin ein Label-Tag hinter jedes input-Feld eingefügt. Will man nun den error an einer <strong>anderen Stelle zeigen</strong> kann man die Funktion folgendermaßen umschreiben:</p><div
class="wp_codebox_msgheader"><span
class="right"><sup><a
href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span
style="color: #99cc00">?</span></a></sup></span><span
class="left"><a
href="javascript:;" onclick="javascript:showCodeTxt('p854code6'); return false;">View Code</a> JAVASCRIPT</span><div
class="codebox_clear"></div></div><div
class="wp_codebox"><table><tr
id="p8546"><td
class="line_numbers"><pre>1
2
3
4
5
</pre></td><td
class="code" id="p854code6"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#form&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">validate</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
  errorPlacement<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>error<span style="color: #339933;">,</span> element<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
     error.<span style="color: #660066;">appendTo</span><span style="color: #009900;">&#40;</span> element.<span style="color: #660066;">next</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div><p>Die Fehlermeldungen würde nun <strong>ausgehend vom input</strong> (element) in das <strong>nächste DOM Element</strong>, in unserem Fall das label-Tag, <strong>geschrieben </strong>werden.<br
/> Natürlich haben wir mit diesem Beispiel nur wieder das Ausgangsverhalten des Plugins erreicht. Dieses Prinzip lässt leicht auf komplexere Anwendungsfälle übertragen. Wie beispielsweise bei erwähntem jqTransform, bei dem um das input-Feld mehrere Divs gelegt werden. Die Fehlermeldung des Validate Plugins wird dann unterhalb (auf z-Ebene) der Felder angezeigt. Durch travesieren durch den DOM-Baum können die Fehlermeldungen beliebig positioniert werden.</p><h3  class="related_post_title">Ähnliche Artikel</h3><ul
class="related_post"><li>12. August 2009 -- <a
href="http://www.mysrc.de/jquery/jquery-form-plugin-do-some-ajax-magic-easily/" title="jQuery Form Plugin &#8211; Do some AJAX magic easily">jQuery Form Plugin &#8211; Do some AJAX magic easily</a></li><li>4. August 2009 -- <a
href="http://www.mysrc.de/jquery/formularfelder-vorausfullen-und-leeren-mit-jquery-clearfield/" title="Formularfelder vorausfüllen und leeren mit jQuery Clearfield">Formularfelder vorausfüllen und leeren mit jQuery Clearfield</a></li><li>30. Juni 2009 -- <a
href="http://www.mysrc.de/allgemein/jquery-mypass-password-hiding-iphone-style/" title="jQuery myPass &#8211; password hiding iPhone-Style">jQuery myPass &#8211; password hiding iPhone-Style</a></li></ul>]]></content:encoded> <wfw:commentRss>http://www.mysrc.de/jquery/praxistip-output-element-des-jquery-validate-plugin-andern/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>jQuery Debugger</title><link>http://www.mysrc.de/jquery/jquery-debugger/</link> <comments>http://www.mysrc.de/jquery/jquery-debugger/#comments</comments> <pubDate>Wed, 18 Mar 2009 21:29:45 +0000</pubDate> <dc:creator>Stefan Huissel</dc:creator> <category><![CDATA[jQuery]]></category> <category><![CDATA[debug]]></category> <category><![CDATA[fehlersuche]]></category> <category><![CDATA[noConflict]]></category> <guid
isPermaLink="false">http://www.mysrc.de/?p=262</guid> <description><![CDATA[Beim Entwickeln von Prgrammcode ist ein tieferer Blick in die Objektstruktur oft unabdingbar. Ein guter Debugger kann einem stundenlanges suchen nach Fehlern ersparen. Deshalb will ich kurz einen jQuery Debugger vorstellen. Downloaden könnt ihr ihn euch als jQuery Plugin auf: jQuery Debugger Nachdem das Plugin eingebunden ist (ganz normal mit script-Tag und src-Attribut), könnt ihr [...]]]></description> <content:encoded><![CDATA[<p>Beim Entwickeln von Prgrammcode ist ein tieferer Blick in die Objektstruktur oft unabdingbar. Ein guter Debugger kann einem stundenlanges suchen nach Fehlern ersparen. Deshalb will ich kurz einen jQuery Debugger vorstellen. Downloaden könnt ihr ihn euch als jQuery Plugin auf: <a
href="http://wellstyled.com/en/javascript-debug-jquery-plugin/">jQuery Debugger</a><br
/> Nachdem das Plugin eingebunden ist (ganz normal mit script-Tag und src-Attribut), könnt ihr es mit folgendem Code aufrufen:</p><div
class="wp_codebox_msgheader"><span
class="right"><sup><a
href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span
style="color: #99cc00">?</span></a></sup></span><span
class="left"><a
href="javascript:;" onclick="javascript:showCodeTxt('p262code10'); return false;">View Code</a> JAVASCRIPT</span><div
class="codebox_clear"></div></div><div
class="wp_codebox"><table><tr
id="p26210"><td
class="line_numbers"><pre>1
2
3
</pre></td><td
class="code" id="p262code10"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">var</span> debuggen <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> jQuery.<span style="color: #660066;">debug</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #006600; font-style: italic;">// ...</span>
debuggen.<span style="color: #660066;">dump</span><span style="color: #009900;">&#40;</span>Object<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div><p>Nun noch ein kleines Beispiel dazu:</p><div
class="wp_codebox_msgheader"><span
class="right"><sup><a
href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span
style="color: #99cc00">?</span></a></sup></span><span
class="left"><a
href="javascript:;" onclick="javascript:showCodeTxt('p262code11'); return false;">View Code</a> HTML</span><div
class="codebox_clear"></div></div><div
class="wp_codebox"><table><tr
id="p26211"><td
class="line_numbers"><pre>1
</pre></td><td
class="code" id="p262code11"><pre class="html" style="font-family:monospace;">&lt;input name=&quot;LieferName&quot;  value=&quot;&quot; class=&quot;validate['required','length[6,-1]']&quot; type=&quot;text&quot; id=&quot;LieferName&quot; /&gt;</pre></td></tr></table></div><p>Der Code um sich das Objekt näher anzuschauen kann wie folgt aussehen:</p><div
class="wp_codebox_msgheader"><span
class="right"><sup><a
href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span
style="color: #99cc00">?</span></a></sup></span><span
class="left"><a
href="javascript:;" onclick="javascript:showCodeTxt('p262code12'); return false;">View Code</a> JAVASCRIPT</span><div
class="codebox_clear"></div></div><div
class="wp_codebox"><table><tr
id="p26212"><td
class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td
class="code" id="p262code12"><pre class="javascript" style="font-family:monospace;">debug <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> jQuery.<span style="color: #660066;">debug</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
	posTo <span style="color: #339933;">:</span> <span style="color: #009900;">&#123;</span> x<span style="color: #339933;">:</span><span style="color: #3366CC;">'right'</span><span style="color: #339933;">,</span> y<span style="color: #339933;">:</span><span style="color: #3366CC;">'bottom'</span> <span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span>
	width<span style="color: #339933;">:</span> <span style="color: #3366CC;">'480px'</span><span style="color: #339933;">,</span>
	height<span style="color: #339933;">:</span> <span style="color: #3366CC;">'50%'</span><span style="color: #339933;">,</span>
	itemDivider <span style="color: #339933;">:</span> <span style="color: #3366CC;">'&lt;hr&gt;'</span><span style="color: #339933;">,</span>
	listDOM <span style="color: #339933;">:</span> <span style="color: #009900;">&#91;</span> <span style="color: #3366CC;">'tagName'</span><span style="color: #339933;">,</span><span style="color: #3366CC;">'id'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'innerText'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'href'</span><span style="color: #339933;">,</span><span style="color: #3366CC;">'value'</span> <span style="color: #009900;">&#93;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> showMeDebug<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
  <span style="color: #003366; font-weight: bold;">var</span> input <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'LieferName'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  debug.<span style="color: #660066;">dump</span><span style="color: #009900;">&#40;</span>input<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div><p>Hier würde jetzt nach Aufruf der Funktion showMeDebug auf der unteren rechten Seite des Bildschirms eine Box, in der alle alle Attribute des &#8220;listDOM&#8221; für das Objekt &#8220;input&#8221; stehen, angezeigt.<br
/> Für ein Formularfeld ist diese Funktion nur teilweise interessant. Sinnvoller ist der Einsatz des Debuggers für komplexe Objekte vor allem natürlich Klasseninstanzen.</p><p>Zu beachten ist, dass vor &#8220;debug = new jQuery.debug&#8221; u. U. die &#8220;var&#8221; Deklaration von JavaScript stehen und &#8220;jQuery&#8221; durch $ ersetzt werden muss. Obiges Skript wurde im noConflict Mode von jQuery ausgeführt.</p><h3  class="related_post_title">Ähnliche Artikel</h3><ul
class="related_post"><li>4. September 2009 -- <a
href="http://www.mysrc.de/jquery/praxistip-output-element-des-jquery-validate-plugin-andern/" title="Praxistip: Output Element des jQuery Validate Plugin ändern">Praxistip: Output Element des jQuery Validate Plugin ändern</a></li><li>18. Mai 2009 -- <a
href="http://www.mysrc.de/mootools/jquery-noconflict-mode/" title="jQuery noConflict Mode">jQuery noConflict Mode</a></li><li>1. Dezember 2010 -- <a
href="http://www.mysrc.de/html5/jquery-mobile-der-eitenaufbau/" title="jQuery Mobile &#8211; Der Seitenaufbau">jQuery Mobile &#8211; Der Seitenaufbau</a></li></ul>]]></content:encoded> <wfw:commentRss>http://www.mysrc.de/jquery/jquery-debugger/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
