Skip to content

Commit

Permalink
server side validation with updater
Browse files Browse the repository at this point in the history
  • Loading branch information
stuarthalloway committed Aug 27, 2008
1 parent c115863 commit 372996c
Show file tree
Hide file tree
Showing 4 changed files with 51 additions and 3 deletions.
1 change: 1 addition & 0 deletions app/views/examples/index.html.erb
Expand Up @@ -3,4 +3,5 @@
<ul>
<li><%= link_to "Client-side validation", :action => "validation" %></a></li>
<li><%= link_to "Server-side validation", :action => "server_validation" %></a></li>
<li><%= link_to "Server-side validation with updater", :action => "server_validation_with_updater" %></a></li>
</ul>
19 changes: 19 additions & 0 deletions app/views/examples/server_validation_with_updater.html.erb
@@ -0,0 +1,19 @@
<script type="text/javascript" src="/javascripts/server_validation_with_updater.js"></script>

<h2>Server-Side Validation</h2>

<form>
<table>
<tr>
<td>What is your name?</td>
<td><input type="text" id="name"/></td>
<td id="name_validation">&nbsp;</td>
</tr>
<tr>
<td>What is your favorite color?</td>
<td><input type="text" id="favorite_color"/></td>
<td id="favorite_color_validation">&nbsp;</td>
</tr>
</table>
</form>

22 changes: 19 additions & 3 deletions prototaculous.iws
Expand Up @@ -68,10 +68,19 @@
</provider>
</entry>
</file>
<file leaf-file-name="server_validation.js" pinned="false" current="true" current-in-tab="true">
<file leaf-file-name="server_validation.js" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/public/javascripts/server_validation.js">
<provider selected="true" editor-type-id="text-editor">
<state line="8" column="8" selection-start="343" selection-end="343" vertical-scroll-proportion="0.22189781">
<state line="0" column="0" selection-start="0" selection-end="565" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="server_validation_with_updater.js" pinned="false" current="true" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/public/javascripts/server_validation_with_updater.js">
<provider selected="true" editor-type-id="text-editor">
<state line="4" column="26" selection-start="199" selection-end="199" vertical-scroll-proportion="0.110948905">
<folding />
</state>
</provider>
Expand Down Expand Up @@ -349,7 +358,14 @@
</entry>
<entry file="file://$PROJECT_DIR$/public/javascripts/server_validation.js">
<provider selected="true" editor-type-id="text-editor">
<state line="8" column="8" selection-start="343" selection-end="343" vertical-scroll-proportion="0.22189781">
<state line="0" column="0" selection-start="0" selection-end="565" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/public/javascripts/server_validation_with_updater.js">
<provider selected="true" editor-type-id="text-editor">
<state line="4" column="26" selection-start="199" selection-end="199" vertical-scroll-proportion="0.110948905">
<folding />
</state>
</provider>
Expand Down
12 changes: 12 additions & 0 deletions public/javascripts/server_validation_with_updater.js
@@ -0,0 +1,12 @@
document.observe("dom:loaded", function() {
$("name", "favorite_color").invoke("observe", "change", function(item) {
var elem = item.element();
console.log(elem);
new Ajax.Updater(elem.id + "_validation", "/examples/validate_field", {
method: 'post',
parameters: {field: elem.id, value: elem.value},
onFailure: function(req) {alert(req.responseText)},
onException: function(t,e) {alert(e);}
});
});
});

0 comments on commit 372996c

Please sign in to comment.