<?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>Skidoosh</title>
	<atom:link href="http://www.skidoosh.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.skidoosh.co.uk</link>
	<description>The online technical ramblings of Glyn Mooney, web developer from North Wales, UK</description>
	<lastBuildDate>Thu, 17 Dec 2009 00:44:38 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>CakePHP Aptana and Eclipse PDT code completion that works</title>
		<link>http://www.skidoosh.co.uk/php/cakephp-aptana-and-eclipse-pdt-code-completion-that-works/</link>
		<comments>http://www.skidoosh.co.uk/php/cakephp-aptana-and-eclipse-pdt-code-completion-that-works/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 00:44:38 +0000</pubDate>
		<dc:creator>Glyn Mooney</dc:creator>
				<category><![CDATA[Aptana]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.skidoosh.co.uk/?p=68</guid>
		<description><![CDATA[A short guide on how to enable CakePHP auto completion within the Aptana Studio or Eclipse PDT IDE for Models within controllers and helpers. This actually works!]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.skidoosh.co.uk%2Fphp%2Fcakephp-aptana-and-eclipse-pdt-code-completion-that-works%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.skidoosh.co.uk%2Fphp%2Fcakephp-aptana-and-eclipse-pdt-code-completion-that-works%2F" height="61" width="51" /></a></div><p>I keep seeing people asking the question &#8220;How do I get code completion to work in Aptana and Eclipse PDT?&#8221;. A lot of the time I see the Helper fix but nothing else! With a bit of fiddling I&#8217;ve finally got a complete solution <strong>that works!</strong> Here how I did it:</p>
<p>Follow this guide to enable the .thtml or .ctp file extentions: <a href="http://bakery.cakephp.org/articles/view/setting-up-eclipse-to-work-with-cake" title="Setting up Eclipse to work with Cake" target="_blank">Setting up Eclipse to work with Cake</a></p>
<p>Create a dummy file in your cake root directory with the following code:</p>
<pre name="code" class="php">
&lt;?php
   exit();
   //declare and define all of the helpers
   //to helper enable codecompletion
   if(1 == 0) {
        $ajax = new AjaxHelper();
        $cache = new CacheHelper();
        $form = new FormHelper();
        $html = new HtmlHelper();
        $javascript = new JavascriptHelper();
        $number = new NumberHelper();
        $session = new SessionHelper();
        $text = new TextHelper();
        $time = new TimeHelper();
    }
?&gt;
</pre>
<p>Then to get the Model code completion from within controllers create an app_controller.php file in you app directory and add a dummy function with the following code:</p>
<pre name="code" class="php">
&lt;?php
    class AppController extends Controller {
        public function dummy () {
            //for each of your models add a definition and declaration
            //like the ones that follow
            $this->User = new User();
            $this->Post = new Post();
        }
    }
?&gt;
</pre>
<p>So with a bit of luck this will help you on your way. Thanks for reading!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.skidoosh.co.uk/php/cakephp-aptana-and-eclipse-pdt-code-completion-that-works/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Find and Replace Function</title>
		<link>http://www.skidoosh.co.uk/mysql/mysql-find-and-replace-function/</link>
		<comments>http://www.skidoosh.co.uk/mysql/mysql-find-and-replace-function/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 19:21:21 +0000</pubDate>
		<dc:creator>Glyn Mooney</dc:creator>
				<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://www.skidoosh.co.uk/?p=62</guid>
		<description><![CDATA[A quick guide to one of the most useful MySQL functions. The replace function is a great way to find and replace bulk text matches in one easy step.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.skidoosh.co.uk%2Fmysql%2Fmysql-find-and-replace-function%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.skidoosh.co.uk%2Fmysql%2Fmysql-find-and-replace-function%2F" height="61" width="51" /></a></div><p>The MySQL REPLACE function is one of the most useful function MySQL has to offer. It&#8217;s great if you need to do a bulk find and replace on text in your database table. It&#8217;s very useful for migrations from one domain name to another and I have used it countless times to move Wordpress installations from a testing to a production environment to re-point images. Here the code:</p>
<pre name="code" class="sql">UPDATE table_name SET column_name = REPLACE(column_name, 'find_string_in_quotes', 'replace_string_in_quotes');</pre>
<p>Hope you find this useful. If you know a better way please leave a reply!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.skidoosh.co.uk/mysql/mysql-find-and-replace-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wordpress Plugin: WP Post To Twitter</title>
		<link>http://www.skidoosh.co.uk/wordpress-plugins/wordpress-plugin-wp-post-to-twitter/</link>
		<comments>http://www.skidoosh.co.uk/wordpress-plugins/wordpress-plugin-wp-post-to-twitter/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 22:04:22 +0000</pubDate>
		<dc:creator>Glyn Mooney</dc:creator>
				<category><![CDATA[Wordpress Plugins]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.skidoosh.co.uk/?p=37</guid>
		<description><![CDATA[WP Post To Twitter: A nice simple Twitter Wordpress plugin for your blog. Allows you to Tweet from your blog and automatically updates Twitter when you create a new blog post.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.skidoosh.co.uk%2Fwordpress-plugins%2Fwordpress-plugin-wp-post-to-twitter%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.skidoosh.co.uk%2Fwordpress-plugins%2Fwordpress-plugin-wp-post-to-twitter%2F" height="61" width="51" /></a></div><p><strong>Version 1.5.0 has now been released.</strong></p>
<p style="text-align: center;"><strong><span style="color: #ff0000;">* This Plugin Requires CURL To Work *</span><br />
</strong></p>
<p>This Wordpress Twitter plugin is a nice simple plugin. All it does is post updates from your blog to your twitter account when you create a fresh post and allows you to tweet from you blog. Some other features are:</p>
<ul>
<li>Auto shorten URL&#8217;s with tinyurl</li>
<li>Validation to make sure you can tweet or warns you if you cant</li>
<li>Automatic character limitation to make sure you don&#8217;t post anything over 140 characters</li>
<li>Good for SEO, creating automatic links to your blog and it&#8217;s posts</li>
</ul>
<p><strong>Installation</strong></p>
<p>All you have to do is download version 1.1.0 from the link below, unzip it, upload it to your plugins folder and activate it from the plugins menu.</p>
<p>Hope you like it :)</p>
<p><a rel="external" href="http://wordpress.org/extend/plugins/wp-post-to-twitter/">Download WP Post To Twitter</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.skidoosh.co.uk/wordpress-plugins/wordpress-plugin-wp-post-to-twitter/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>SQL Injection in Action</title>
		<link>http://www.skidoosh.co.uk/security/sql-injection-in-action/</link>
		<comments>http://www.skidoosh.co.uk/security/sql-injection-in-action/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 23:40:48 +0000</pubDate>
		<dc:creator>Glyn Mooney</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[attack]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[sql injection]]></category>

		<guid isPermaLink="false">http://www.skidoosh.co.uk/?p=30</guid>
		<description><![CDATA[Have you ever heard of an SQL injection attack? Ever wondered how it's actually done? Well take a look at the video in this post to see one in action!]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.skidoosh.co.uk%2Fsecurity%2Fsql-injection-in-action%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.skidoosh.co.uk%2Fsecurity%2Fsql-injection-in-action%2F" height="61" width="51" /></a></div><p>Have you ever heard of an SQL injection attack? Ever wondered how it&#8217;s actually done? Well here&#8217;s a great video showing you how:</p>
<p><a title="Blind SQL Injection Attack" href="http://www.milw0rm.com/video/watch.php?id=100">Blind SQL Injection Attack Video</a></p>
<p>You don&#8217;t often get to see a demonstration of how an attacker will actually use techniques such as this the infiltrate a site. My belief is that if you need to defend yourself or your application against it you need to see it in action. <a title="Application Exploit Database" href="http://www.milw0rm.com/">milw0rm</a> is a great place to see what applications are vulnerable to attack, how, why and has it been fixed.</p>
<h2>What could have been done to prevent this attack?</h2>
<p>Lots of things could have been done to prevent this from happening, but often is the case in large applications or small one&#8217;s built by an inexperienced developer holes are left in the security of an application. One thing to remember when developing an application that <strong>any </strong>user submitted data should be treated as hostile. It should be checked via Regex, cleaned, Type Casted and validated to ensure what your getting from the user is what you expected.</p>
<p>In the video a function as simple as mysql_real_escape_string could have prevented this but here are some other things you should know about:</p>
<h3>Hash your passwords</h3>
<p>I don&#8217;t know if you noticed in the video but the attacker acquired a plain text password. This was the application developers first mistake. If the password had been hashed, even if the attacked had got the entire hash it would have been useless. If you put another hash in it will just be converted to guess what, another hash. This would have rendered this attack fruitless. MD5 is a great Hashing function that comes pre-packed with most programming languages and would turn this &#8220;password&#8221; into this &#8220;5f4dcc3b5aa765d61d8327deb882cf99&#8243;. Even if one character changes the hash would be completely different.</p>
<h3>Use a Database abstraction layer</h3>
<p>In PHP a great example of this would be the MDB2 class. This class comes with a whole list of security features including some great sanitisation functions. Using a single gateway to your database will greatly reduce the margin for error. You could even develop your own with automatic data cleaning.</p>
<h3>Use an odd admin section name</h3>
<p>One issue with applications with an integrated CMS is the admin section is simply called &#8220;admin&#8221;. In this case if the attacker armed with a username and password couldn&#8217;t find your admin section he would have had to employ some more sophisticated tools to monitor where you where going to update your site. At this point they may get bored or more often than not, it&#8217;s an automated attack. In this case the application may try to guess where it is, fail and move on. So try to name your admin sections more carefully!</p>
<p>Well I hope someone finds this of use and I look forward to your responses!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.skidoosh.co.uk/security/sql-injection-in-action/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery selectors and attribute selectors reference and examples V2</title>
		<link>http://www.skidoosh.co.uk/jquery/jquery-selectors-and-attribute-selectors-reference-and-examples-v2/</link>
		<comments>http://www.skidoosh.co.uk/jquery/jquery-selectors-and-attribute-selectors-reference-and-examples-v2/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 13:38:05 +0000</pubDate>
		<dc:creator>Glyn Mooney</dc:creator>
				<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://skidoosh.co.uk/?p=3</guid>
		<description><![CDATA[At the start of the year I wrote an article over on another site detailing the different methods you could use to select elements using the powerful jQuery attribute selectors. Because I no longer work for that company any more and the article is no longer being maintained, I've decided to create a second version of the article so I can update it and extend it's usefulness.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.skidoosh.co.uk%2Fjquery%2Fjquery-selectors-and-attribute-selectors-reference-and-examples-v2%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.skidoosh.co.uk%2Fjquery%2Fjquery-selectors-and-attribute-selectors-reference-and-examples-v2%2F" height="61" width="51" /></a></div><p>At the start of the year I wrote an article over on another site detailing the different methods you could use to select elements using the powerful jQuery attribute selectors. Because I no longer work for that company any more and the article is no longer being maintained, I&#8217;ve decided to create a second version of the article so I can update it and extend it&#8217;s usefulness.</p>
<p>jQuery selectors and attribute selectors are some of the best features jQuery has to offer when it comes to DOM manipulation. They allow you to quickly select all elements or groups of element of a given tag name, attribute name or their contents and allow you to manipulate them as a group or a single node. This article can be used as a beginners guide to selectors or as a cheahsheet or reference.</p>
<p>The following table lists the different methods you have available to you to select nodes when using jQuery. All of the listed selectors should be wrapped in the following to stop your jQuery scripts conflicting with other libraries:</p>
<pre class="javascript">    (function ($) {
        //Your code here
    })(jQuery);</pre>
<h2>jQuery selectors and examples</h2>
<p>Below are a slip tabular list of the different selector and groups they seem to fit into.</p>
<ul>
<li><a href="#simple">jQuery Simple selectors</a></li>
<li><a href="#css">jQuery CSS style sudo selectors</a></li>
<li><a href="#xpath">jQuery XPath style selectors</a></li>
<li><a href="#form">jQuery form selectors</a></li>
</ul>
<p><a name="simple"> </a></p>
<div class="table-wrapper">
<table border="0" summary=" jQuery Simple selectors">
<caption> jQuery Simple selectors<br />
</caption>
<thead>
<tr>
<th scope="col"> Selector</th>
<th scope="col"> Example</th>
<th width="40%" scope="col"> Description</th>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="3">List accurate as of jQuery 1.3</td>
</tr>
</tfoot>
<tbody>
<tr class="odd">
<th scope="row"> *</th>
<td>$(’*&#8217;);</td>
<td>This selector is a wild card method and will select all elements in a document.</td>
</tr>
<tr>
<th scope="row"> #id</th>
<td>$(’#id’);</td>
<td>This selector selects an element with the given ID.</td>
</tr>
<tr class="odd">
<th scope="row"> .class</th>
<td>$(’.class’)</td>
<td>The class selector will gather all elements in the document with the given class name</td>
</tr>
<tr>
<th scope="row"> element</th>
<td>$(’element’)</td>
<td>This selector will collect all elements in a document with the given tag name i.e. table, ul, li, a etc.</td>
</tr>
<tr class="odd">
<th scope="row"> a, b, c. … n</th>
<td>$(’th, td, .class, #id’)</td>
<td>This method can use multiple selection patterns to collect elements.</td>
</tr>
<tr>
<th scope="row"> parent child</th>
<td>$(’li a’)</td>
<td>This will select all “a” elements that are a descendant of “li”</td>
</tr>
<tr class="odd">
<th scope="row"> a &gt; b</th>
<td>$(’table &gt; tr’);</td>
<td>This will select all b elements which are a child element of a or in our example all tr elements in a table or tables.</td>
</tr>
<tr>
<th scope="row"> a + b</th>
<td>$(’li + a’);</td>
<td>This will select all “a” elements that are an immediate descendant of “li” in our example.</td>
</tr>
<tr class="odd">
<th scope="row"> a ~ b</th>
<td>$(’p ~ ul’);</td>
<td>This selector will select all “ul” elements that are a sibling of “p”</td>
</tr>
<tr>
<th scope="row"> :first</th>
<td>$(’ul li:first’);</td>
<td>Returns the first element in a result set</td>
</tr>
</tbody>
</table>
</div>
<p><a name="css"> </a></p>
<div class="table-wrapper">
<table border="0" summary="jQuery CSS style sudo selectors">
<caption> jQuery CSS style sudo selectors<br />
</caption>
<thead>
<tr>
<th scope="col"> Selector</th>
<th scope="col"> Example</th>
<th width="40%" scope="col"> Description</th>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="3">List accurate as of jQuery 1.3</td>
</tr>
</tfoot>
<tbody>
<tr class="odd">
<th scope="row"> :first-child</th>
<td>$(’ul li:first-child’);</td>
<td>Returns the first child element of the parent element.</td>
</tr>
<tr class="odd">
<th scope="row"> :last</th>
<td>$(’ul li:last’);</td>
<td>Returns the last element in a result set</td>
</tr>
<tr>
<th scope="row"> :last-child</th>
<td>$(’ul li:last-child’);</td>
<td>Returns the last child element of the parent element.</td>
</tr>
<tr class="odd">
<th scope="row"> :only-child</th>
<td>$(’div p:only-child’);</td>
<td>Returns elements which are the only child of the parent element.</td>
</tr>
<tr>
<th scope="row"> :not(a)</th>
<td>$(’input:not(:checked)’);</td>
<td>Returns all elements that are <strong>not</strong><br />
“a” on in our example all input elements that are not checked</td>
</tr>
<tr class="odd">
<th scope="row"> :has(a)</th>
<td>$(’div:has(p)’);</td>
<td>Returns all elements with a descendant that matches a in out example a “div” that contains a “p”.</td>
</tr>
<tr>
<th scope="row"> :odd</th>
<td>$(’ul li:odd’);</td>
<td>Returns all <strong>odd</strong><br />
elements in a result set (zero based)</td>
</tr>
<tr class="odd">
<th scope="row"> :even</th>
<td>$(’ul li:even’);</td>
<td>Returns all <strong>even</strong><br />
elements in a result set (zero based)</td>
</tr>
<tr>
<th scope="row"> :eq(n)</th>
<td>$(’ul li:eq(n)’);</td>
<td>Returns a numbered element identified by n (zero based)</td>
</tr>
<tr class="odd">
<th scope="row"> :gt(n)</th>
<td>$(’ul li:gt(n)’);</td>
<td>Returns all elements in a result set greater than n (zero based)</td>
</tr>
<tr>
<th scope="row"> :lt(n)</th>
<td>$(’ul li:lt(n)’);</td>
<td>Returns all elements in a result set less than n (zero based)</td>
</tr>
<tr class="odd">
<th scope="row"> :nth-child(n)</th>
<td>$(’ul li:nth-child(n)’);</td>
<td>Returns the nth child in a result set (one based)</td>
</tr>
<tr>
<th scope="row"> :nth-child(odd)</th>
<td>$(’ul li:nth-child(odd)’);</td>
<td>Returns all <strong>odd</strong><br />
numbered elements in a result set (one based)</td>
</tr>
<tr class="odd">
<th scope="row"> :nth-child(even)</th>
<td>$(’ul li:nth-child(even)’);</td>
<td>Returns all <strong>even</strong><br />
numbered elements in a result set (one based)</td>
</tr>
<tr>
<th scope="row"> :nth-child(formula)</th>
<td>$(’ul li:nth-child(3n)’);</td>
<td>Returns every nth child in a result set. In our example every third child (one based)</td>
</tr>
<tr class="odd">
<th scope="row"> :header</th>
<td>$(’:header’);</td>
<td>Returns all heading elements e.g. h1, h2, etc.</td>
</tr>
<tr>
<th scope="row"> :animated</th>
<td>$(’ul:animated’);</td>
<td>Returns elements with an animation currently in progress</td>
</tr>
<tr class="odd">
<th scope="row"> :contains(text)</th>
<td>$(’:contains(hello)’);</td>
<td>Returns all elements containing the passed string</td>
</tr>
<tr>
<th scope="row"> :empty</th>
<td>$(’:empty’);</td>
<td>Returns all elements that contain no child nodes</td>
</tr>
<tr class="odd">
<th scope="row"> :parent</th>
<td>$(’li:parent’);</td>
<td>Returns all elements that a parent nodes to any other DOM element including text nodes.</td>
</tr>
<tr>
<th scope="row"> :hidden</th>
<td>$(’ul:hidden’);</td>
<td>Returns all hidden elements that are hidden with CSS or input fields of the type “hidden”</td>
</tr>
<tr class="odd">
<th scope="row"> :visible</th>
<td>$(’ul:visible’);</td>
<td>Returns all visible elements</td>
</tr>
</tbody>
</table>
</div>
<p><a name="xpath"> </a></p>
<div class="table-wrapper">
<table border="0" summary="jQuery XPath style selectors">
<caption> jQuery XPath style selectors<br />
</caption>
<thead>
<tr>
<th scope="col"> Selector</th>
<th scope="col"> Example</th>
<th width="40%" scope="col"> Description</th>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="3">List accurate as of jQuery 1.3</td>
</tr>
</tfoot>
<tbody>
<tr class="odd">
<th scope="row"> [attribute]</th>
<td>$(’[href]‘);</td>
<td>Returns all elements that contain the passed attribute in our example any element with a “href” attribute</td>
</tr>
<tr>
<th scope="row"> [attribute=value]</th>
<td>$(’[rel=external]‘);</td>
<td>Returns all elements that the passed attribute value is equal to the passed value. In our example ant element with a “rel” attribute equal to “external”</td>
</tr>
<tr class="odd">
<th scope="row"> ['attribute!=value']</th>
<td>$(’[rel!=external]‘);</td>
<td>Returns all elements that the passed attribute value is not equal to the passed value. In our example ant element with a “rel” attribute that is not equal to “external”</td>
</tr>
<tr>
<th scope="row"> [attribute!=value]</th>
<td>$(’[class^=open]‘);</td>
<td>Returns all elements that the passed attribute value start with the passed value. In our example any element thats “class” attribute value begins with “open”</td>
</tr>
<tr class="odd">
<th scope="row"> [attribute$=value]</th>
<td>$(’[id$=-wrapper]‘);</td>
<td>Returns all elements that the passed attribute value ends with the passed value. In our example any element whos “id” ends with “-wrapper”</td>
</tr>
<tr>
<th scope="row"> [attribute*=value]</th>
<td>$(’[class*=offer]‘);</td>
<td>Returns all elements that the passed attribute value contains the passed value. In our example any element whos “class” contains the string “offer”</td>
</tr>
</tbody>
</table>
</div>
<p><a name="form"> </a></p>
<div class="table-wrapper">
<table border="0" summary="jQuery form element selectors">
<caption> jQuery Form Selectors<br />
</caption>
<thead>
<tr>
<th scope="col"> Selector</th>
<th scope="col"> Example</th>
<th width="40%" scope="col"> Description</th>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="3">List accurate as of jQuery 1.3</td>
</tr>
</tfoot>
<tbody>
<tr class="odd">
<th scope="row"> :input</th>
<td>$(’:input’);</td>
<td>Returns only input elements of the tag name input, select, textarea and button</td>
</tr>
<tr>
<th scope="row"> :text</th>
<td>$(’:text’);</td>
<td>Returns only input elements of the type “text”</td>
</tr>
<tr class="odd">
<th scope="row"> :password</th>
<td>$(’:password’);</td>
<td>Returns only input elements of the type “password”</td>
</tr>
<tr>
<th scope="row"> :radio</th>
<td>$(’:radio’);</td>
<td>Returns only input elements of the type “radio”</td>
</tr>
<tr class="odd">
<th scope="row"> :checkbox</th>
<td>$(’:checkbox’);</td>
<td>Returns only input elements of the type “checkbox”</td>
</tr>
<tr>
<th scope="row"> :submit</th>
<td>$(’:submit’);</td>
<td>Returns only input elements of the type “submit”</td>
</tr>
<tr class="odd">
<th scope="row"> :image</th>
<td>$(’:image’);</td>
<td>Returns only input elements of the type “image”</td>
</tr>
<tr>
<th scope="row"> :reset</th>
<td>$(’:reset’);</td>
<td>Returns only input elements of the type “reset”</td>
</tr>
<tr class="odd">
<th scope="row"> :file</th>
<td>$(’:file’);</td>
<td>Returns only input elements of the type “file”</td>
</tr>
<tr>
<th scope="row"> :button</th>
<td>$(’:button’);</td>
<td>Returns only input elements of the type “button”</td>
</tr>
<tr class="odd">
<th scope="row"> :enabled</th>
<td>$(’:enabled’);</td>
<td>Returns all enabled input elements</td>
</tr>
<tr>
<th scope="row"> :selected</th>
<td>$(’:selected’);</td>
<td>Returns the <strong>selected</strong><br />
element in a select list.</td>
</tr>
<tr class="odd">
<th scope="row"> :disabled</th>
<td>$(’:disabled’);</td>
<td>Returns disabled input elements</td>
</tr>
<tr>
<th scope="row"> :checked</th>
<td>$(’:checked’);</td>
<td>Returns checked input elements of the type radio or checkbox.</td>
</tr>
</tbody>
</table>
</div>
<p>Well I hope that version two of &#8220;jQuery selectors and attribute selectors reference and examples&#8221; is more helpful than V1. With a bit of luck you&#8217;ll find the grouping a little better too. Thanks for visiting! Please leave a message!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.skidoosh.co.uk/jquery/jquery-selectors-and-attribute-selectors-reference-and-examples-v2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
