<?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>Knockout JS Validations &#8211; Sibeesh Passion</title>
	<atom:link href="https://mail.sibeeshpassion.com/tag/knockout-js-validations/feed/" rel="self" type="application/rss+xml" />
	<link>https://mail.sibeeshpassion.com</link>
	<description>My passion towards life</description>
	<lastBuildDate>Tue, 10 Jul 2018 07:45:58 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>/wp-content/uploads/2017/04/Sibeesh_Passion_Logo_Small.png</url>
	<title>Knockout JS Validations &#8211; Sibeesh Passion</title>
	<link>https://mail.sibeeshpassion.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Knockout JS Validations, Without a Plugin and Using a Plugin</title>
		<link>https://mail.sibeeshpassion.com/knockout-js-validations-without-a-plugin-and-using-a-plugin/</link>
					<comments>https://mail.sibeeshpassion.com/knockout-js-validations-without-a-plugin-and-using-a-plugin/#disqus_thread</comments>
		
		<dc:creator><![CDATA[SibeeshVenu]]></dc:creator>
		<pubDate>Fri, 03 Mar 2017 17:49:21 +0000</pubDate>
				<category><![CDATA[How to]]></category>
		<category><![CDATA[Knockout JS]]></category>
		<category><![CDATA[Knockout JS Validations]]></category>
		<category><![CDATA[Knockout JS Validations Using a Plugin]]></category>
		<category><![CDATA[Knockout JS Validations Without a Plugin]]></category>
		<category><![CDATA[SImple Knockout JS Validations]]></category>
		<guid isPermaLink="false">http://sibeecst_passion.com/?p=12071</guid>

					<description><![CDATA[Here we are going to see how we can implement some basic validations using Knockout JS. As we mentioned in the headline, we are going to create validation demo in two manner. Without using any plugin, our own custom way With using an existing plugin, easy way If you are totally new to Knockout JS, I stringly recommend you to read my previous post here, where I have shared some basics of Knockout JS. We will be using Visual Studio for our development. I hope you will like this. Now let&#8217;s begin. Download source code Knockout JS Validations Background As [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Here we are going to see how we can implement some basic validations using <a href="http://sibeeshpassion.com/category/client-side-technologies/knockout-js/" target="_blank">Knockout JS</a>. As we mentioned in the headline, we are going to create validation demo in two manner.</p>
<li>Without using any plugin, our own custom way</li>
<li>With using an existing plugin, easy way</li>
<p>If you are totally new to Knockout JS, I stringly recommend you to read my previous post <a href="http://sibeeshpassion.com/mvc-crud-actions-using-knockout-js/" target="_blank">here</a>, where I have shared some basics of Knockout JS. We will be using <a href="http://sibeeshpassion.com/category/Visual-Studio/" target="_blank">Visual Studio</a> for our development. I hope you will like this. Now let&#8217;s begin.</p>
<p><strong>Download source code</strong></p>
<li>
<a href="https://code.msdn.microsoft.com/Knockout-JS-Validations-1793d978" target="_blank">Knockout JS Validations</a>
</li>
<p><strong>Background</strong></p>
<p>As I have been working in a project where we use Knockout JS, it was my duty to do some validation for an existing page. This article shows the ways I have tried to implement the same. Like I said above, using a plugin and without using a plugin. Now let&#8217;s go and implement the same in your application too. Shall we?</p>
<p><strong>Create a HTML page</strong></p>
<p>To work with Knockout JS, we need a page right. Let&#8217;s create it first. Before we do that, please do not forget to install Knockout JS and jQuery from NuGet.</p>
<div id="attachment_12074" style="width: 644px" class="wp-caption alignnone"><a href="http://sibeeshpassion.com/wp-content/uploads/2017/03/Installing_KnockOut_JS_from_NuGet.png"><img fetchpriority="high" decoding="async" aria-describedby="caption-attachment-12074" src="http://sibeeshpassion.com/wp-content/uploads/2017/03/Installing_KnockOut_JS_from_NuGet-1024x537.png" alt="Installing_KnockOut_JS_from_NuGet" width="634" height="332" class="size-large wp-image-12074" srcset="/wp-content/uploads/2017/03/Installing_KnockOut_JS_from_NuGet-1024x537.png 1024w, /wp-content/uploads/2017/03/Installing_KnockOut_JS_from_NuGet-300x157.png 300w, /wp-content/uploads/2017/03/Installing_KnockOut_JS_from_NuGet-768x403.png 768w, /wp-content/uploads/2017/03/Installing_KnockOut_JS_from_NuGet-600x315.png 600w, /wp-content/uploads/2017/03/Installing_KnockOut_JS_from_NuGet-400x210.png 400w, /wp-content/uploads/2017/03/Installing_KnockOut_JS_from_NuGet-1143x600.png 1143w, /wp-content/uploads/2017/03/Installing_KnockOut_JS_from_NuGet.png 1475w" sizes="(max-width: 634px) 100vw, 634px" /></a><p id="caption-attachment-12074" class="wp-caption-text">Installing_KnockOut_JS_from_NuGet</p></div>
<p>[html]<br />
&lt;!DOCTYPE html&gt;<br />
&lt;html&gt;<br />
&lt;head&gt;<br />
    &lt;title&gt;&lt;/title&gt;<br />
	&lt;meta charset=&quot;utf-8&quot; /&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
[/html]</p>
<p>Now create a JS file and include it in your page.</p>
<p>[js]<br />
    &lt;script src=&quot;Validations-Without-Plugin.js&quot;&gt;&lt;/script&gt;<br />
[/js]</p>
<p><strong>Let&#8217;s begin our tutorial &#8211; Knockout JS validation without using a plugin</strong></p>
<p>Open your JS file (Validations-Without-Plugin.js), this is where we are going to write our scripts. As a first step, we need to create our view model and bind it using <em>applyBindings </em>function. Am I right?</p>
<p>[js]<br />
$(function () {<br />
    function myViewModel(firstName, lastName, email) {<br />
        this.txtFirstName = ko.observable(firstName);<br />
        this.txtLastName = ko.observable(lastName);<br />
        this.txtEmail = ko.observable(email);<br />
    };<br />
    ko.applyBindings(new myViewModel(&quot;Sibeesh&quot;, &quot;Venu&quot;, &quot;sibikv4u@gmail.com&quot;));<br />
});<br />
[/js]</p>
<p>Now let create our view.</p>
<p>[html]<br />
&lt;!DOCTYPE html&gt;<br />
&lt;html&gt;<br />
&lt;head&gt;<br />
    &lt;title&gt;KnockOut JS Validations&lt;/title&gt;<br />
    &lt;meta charset=&quot;utf-8&quot; /&gt;<br />
    &lt;script src=&quot;Scripts/jquery-3.1.1.min.js&quot;&gt;&lt;/script&gt;<br />
    &lt;script src=&quot;Scripts/knockout-3.4.1.js&quot;&gt;&lt;/script&gt;<br />
    &lt;script src=&quot;Scripts/Validations-Without-Plugin.js&quot;&gt;&lt;/script&gt;</p>
<p>&lt;/head&gt;<br />
&lt;body&gt;<br />
    &lt;table&gt;<br />
        &lt;caption&gt;Knockout JS Validation&lt;/caption&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                First Name: &lt;input type=&quot;text&quot; id=&quot;txtFirstName&quot; name=&quot;txtFirstName&quot; data-bind=&#8217;value: txtFirstName&#8217; /&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                Last Name: &lt;input type=&quot;text&quot; id=&quot;txtLastName&quot; name=&quot;txtLastName&quot; data-bind=&#8217;value: txtLastName&#8217; /&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                Email: &lt;input type=&quot;text&quot; id=&quot;txtEmail&quot; name=&quot;txtEmail&quot; data-bind=&#8217;value: txtEmail&#8217; /&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                &lt;input type=&quot;button&quot; value=&quot;Submit&quot; /&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
    &lt;/table&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
[/html]</p>
<p>If you run your page, you can see the view has got updated with the values we have given in our view model (Do you remember the use if observable()?)</p>
<div id="attachment_12073" style="width: 486px" class="wp-caption alignnone"><a href="http://sibeeshpassion.com/wp-content/uploads/2017/03/Knockout_JS_Observables_Updated.png"><img decoding="async" aria-describedby="caption-attachment-12073" src="http://sibeeshpassion.com/wp-content/uploads/2017/03/Knockout_JS_Observables_Updated.png" alt="Knockout_JS_Observables_Updated" width="476" height="464" class="size-full wp-image-12073" srcset="/wp-content/uploads/2017/03/Knockout_JS_Observables_Updated.png 476w, /wp-content/uploads/2017/03/Knockout_JS_Observables_Updated-300x292.png 300w, /wp-content/uploads/2017/03/Knockout_JS_Observables_Updated-400x390.png 400w" sizes="(max-width: 476px) 100vw, 476px" /></a><p id="caption-attachment-12073" class="wp-caption-text">Knockout_JS_Observables_Updated</p></div>
<p>So far everything is good, now it is time to update our view model and create some extenders. </p>
<blockquote><p>
Knockout JS extenders are the easy way to give some additional functionalities to your observables. It can be anything, in this case we are going to create some validations for our observables or our controls.
</p></blockquote>
<p>We can create the extenders and update the view as preceding.</p>
<p>[js]<br />
$(function () {<br />
    ko.extenders.isRequired = function (elm, customMessage) {</p>
<p>        //add some sub-observables to our observable<br />
        elm.hasError = ko.observable();<br />
        elm.message = ko.observable();</p>
<p>        //This is the function to validate the value entered in the text boxes</p>
<p>        function validateValueEntered(valEntered) {<br />
            elm.hasError(valEntered ? false : true);<br />
            //If the custom message is not given, the default one is taken<br />
            elm.message(valEntered ? &quot;&quot; : customMessage || &quot;I am required 🙁 &quot;);<br />
        }</p>
<p>        //Call the validation function for the initial validation<br />
        validateValueEntered(elm());</p>
<p>        //Validate the value whenever there is a change in value<br />
        elm.subscribe(validateValueEntered);</p>
<p>        return elm;<br />
    };</p>
<p>    ko.extenders.isEmail = function (elm, customMessage) {</p>
<p>        //add some sub-observables to our observable<br />
        elm.hasError = ko.observable();<br />
        elm.message = ko.observable();</p>
<p>        //This is the function to validate the value entered in the text boxes</p>
<p>        function validateEmail(valEntered) {<br />
            var emailPattern = /^(([^&lt;&gt;()\[\]\\.,;:\s@&quot;]+(\.[^&lt;&gt;()\[\]\\.,;:\s@&quot;]+)*)|(&quot;.+&quot;))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;<br />
            //If the value entered is a valid mail id, return fals or return true<br />
            elm.hasError((emailPattern.test(valEntered) === false) ? true : false);<br />
            //If not a valid mail id, return custom message<br />
            elm.message((emailPattern.test(valEntered) === true) ? &quot;&quot; : customMessage);<br />
        }</p>
<p>        //Call the validation function for the initial validation<br />
        validateEmail(elm());</p>
<p>        //Validate the value whenever there is a change in value<br />
        elm.subscribe(validateEmail);</p>
<p>        return elm;<br />
    };</p>
<p>    function myViewModel(firstName, lastName, email) {<br />
        this.txtFirstName = ko.observable(firstName).extend({ isRequired: &quot;You missed First Name&quot; });<br />
        this.txtLastName = ko.observable(lastName).extend({ isRequired: &quot;&quot; });<br />
        this.txtEmail = ko.observable(email).extend({ isEmail: &quot;Not a valid mail id&quot; });<br />
    };<br />
    ko.applyBindings(new myViewModel(&quot;Sibeesh&quot;, &quot;Venu&quot;, &quot;sibikv4u@gmail.com&quot;));<br />
});<br />
[/js]</p>
<p>Here <em>.extend({ isRequired: &#8220;You missed First Name&#8221; });</em> is used for calling the extenders we are just created. The first parameter is the extender name you are creating, and the second one is just a custom message. I had explained the codes with comments, if you get any issues or doubt, please feel free to ask your queries. Now it is time to update our view.</p>
<p>[html]<br />
&lt;!DOCTYPE html&gt;<br />
&lt;html&gt;<br />
&lt;head&gt;<br />
    &lt;title&gt;KnockOut JS Validations&lt;/title&gt;<br />
    &lt;meta charset=&quot;utf-8&quot; /&gt;<br />
    &lt;script src=&quot;Scripts/jquery-3.1.1.min.js&quot;&gt;&lt;/script&gt;<br />
    &lt;script src=&quot;Scripts/knockout-3.4.1.js&quot;&gt;&lt;/script&gt;<br />
    &lt;script src=&quot;Scripts/Validations-Without-Plugin.js&quot;&gt;&lt;/script&gt;<br />
    &lt;style&gt;<br />
        .error {<br />
            color: #D8000C;<br />
            background-color: #FFBABA;<br />
            font-family: cursive;<br />
        }<br />
        table {<br />
            border: 1px solid #c71585;<br />
            padding: 20px;<br />
        }<br />
        td {<br />
            border: 1px solid #ccc;<br />
            padding: 20px;<br />
        }<br />
    &lt;/style&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
    &lt;table&gt;<br />
        &lt;caption&gt;Knockout JS Validation&lt;/caption&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                First Name: &lt;input type=&quot;text&quot; id=&quot;txtFirstName&quot; name=&quot;txtFirstName&quot; data-bind=&#8217;value: txtFirstName, valueUpdate: &quot;afterkeydown&quot;&#8217; /&gt;<br />
                &lt;span class=&quot;error&quot; data-bind=&#8217;visible: txtFirstName.hasError, text: txtFirstName.message&#8217;&gt;&lt;/span&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                Last Name: &lt;input type=&quot;text&quot; id=&quot;txtLastName&quot; name=&quot;txtLastName&quot; data-bind=&#8217;value: txtLastName, valueUpdate: &quot;afterkeydown&quot;&#8217; /&gt;<br />
                &lt;span class=&quot;error&quot; data-bind=&#8217;visible: txtLastName.hasError, text: txtLastName.message&#8217;&gt;&lt;/span&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                Email: &lt;input type=&quot;text&quot; id=&quot;txtEmail&quot; name=&quot;txtEmail&quot; data-bind=&#8217;value: txtEmail, valueUpdate: &quot;afterkeydown&quot;&#8217; /&gt;<br />
                &lt;span class=&quot;error&quot; data-bind=&#8217;visible: txtEmail.hasError, text: txtEmail.message&#8217;&gt;&lt;/span&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                &lt;input type=&quot;button&quot; value=&quot;Submit&quot; /&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
    &lt;/table&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
[/html]</p>
<p>Every observables will be having their own hasError and message properties. And have you noticed that we are usig <em>valueUpdate: &#8220;afterkeydown&#8221;</em> in each data-bind event of our control. This is for initiating validation. Now let&#8217;s run our application and see whether it is working fine or not. </p>
<div id="attachment_12075" style="width: 690px" class="wp-caption alignnone"><a href="http://sibeeshpassion.com/wp-content/uploads/2017/03/Knockout-JS-validation-without-a-plugin-demo.gif"><img decoding="async" aria-describedby="caption-attachment-12075" src="http://sibeeshpassion.com/wp-content/uploads/2017/03/Knockout-JS-validation-without-a-plugin-demo.gif" alt="Knockout JS validation without a plugin demo" width="680" height="494" class="size-full wp-image-12075" /></a><p id="caption-attachment-12075" class="wp-caption-text">Knockout JS validation without a plugin demo</p></div>
<p><strong>Knockout JS validation using a plugin &#8211; easy way</strong></p>
<p>As we are going to use a plugn, we need to install it from the NuGet first. You can always get the plugin from <a href="https://github.com/Knockout-Contrib/Knockout-Validation" target="_blank">here</a></p>
<div id="attachment_12076" style="width: 644px" class="wp-caption alignnone"><a href="http://sibeeshpassion.com/wp-content/uploads/2017/03/Knockout_Validation_JS_from_NuGet.png"><img decoding="async" aria-describedby="caption-attachment-12076" src="http://sibeeshpassion.com/wp-content/uploads/2017/03/Knockout_Validation_JS_from_NuGet-1024x514.png" alt="Knockout_Validation_JS_from_NuGet" width="634" height="318" class="size-large wp-image-12076" srcset="/wp-content/uploads/2017/03/Knockout_Validation_JS_from_NuGet-1024x514.png 1024w, /wp-content/uploads/2017/03/Knockout_Validation_JS_from_NuGet-300x151.png 300w, /wp-content/uploads/2017/03/Knockout_Validation_JS_from_NuGet-768x386.png 768w, /wp-content/uploads/2017/03/Knockout_Validation_JS_from_NuGet-400x201.png 400w, /wp-content/uploads/2017/03/Knockout_Validation_JS_from_NuGet-1195x600.png 1195w, /wp-content/uploads/2017/03/Knockout_Validation_JS_from_NuGet.png 1486w" sizes="(max-width: 634px) 100vw, 634px" /></a><p id="caption-attachment-12076" class="wp-caption-text">Knockout_Validation_JS_from_NuGet</p></div>
<p>Can we create our view model now?</p>
<p>[js]<br />
$(function () {<br />
    function myViewModel(firstName, lastName, email) {<br />
        this.txtFirstName = ko.observable(firstName).extend({ required: true });<br />
        this.txtLastName = ko.observable(lastName).extend({ required: false });<br />
        this.txtEmail = ko.observable(email).extend({ email: true });<br />
    };<br />
    ko.applyBindings(new myViewModel(&quot;Sibeesh&quot;, &quot;Venu&quot;, &quot;sibikv4u@gmail.com&quot;));<br />
});<br />
[/js]</p>
<p>You can see that, there is only few lines of codes when it compared to the old one we created. Now we can create our view.</p>
<p>[html]<br />
&lt;!DOCTYPE html&gt;<br />
&lt;html&gt;<br />
&lt;head&gt;<br />
    &lt;title&gt;KnockOut JS Validations&lt;/title&gt;<br />
    &lt;meta charset=&quot;utf-8&quot; /&gt;<br />
    &lt;script src=&quot;Scripts/jquery-3.1.1.min.js&quot;&gt;&lt;/script&gt;<br />
    &lt;script src=&quot;Scripts/knockout-3.4.1.js&quot;&gt;&lt;/script&gt;<br />
    &lt;script src=&quot;Scripts/knockout.validation.js&quot;&gt;&lt;/script&gt;<br />
    &lt;script src=&quot;Scripts/Validations-Plugin.js&quot;&gt;&lt;/script&gt;<br />
    &lt;style&gt;<br />
        table {<br />
            border: 1px solid #c71585;<br />
            padding: 20px;<br />
        }<br />
        td {<br />
            border: 1px solid #ccc;<br />
            padding: 20px;<br />
        }<br />
    &lt;/style&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
    &lt;table&gt;<br />
        &lt;caption&gt;Knockout JS Validation&lt;/caption&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                First Name: &lt;input type=&quot;text&quot; id=&quot;txtFirstName&quot; name=&quot;txtFirstName&quot; data-bind=&#8217;value: txtFirstName&#8217; /&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                Last Name: &lt;input type=&quot;text&quot; id=&quot;txtLastName&quot; name=&quot;txtLastName&quot; data-bind=&#8217;value: txtLastName&#8217; /&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                Email: &lt;input type=&quot;text&quot; id=&quot;txtEmail&quot; name=&quot;txtEmail&quot; data-bind=&#8217;value: txtEmail&#8217; /&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
        &lt;tr&gt;<br />
            &lt;td&gt;<br />
                &lt;input type=&quot;button&quot; value=&quot;Submit&quot; /&gt;<br />
            &lt;/td&gt;<br />
        &lt;/tr&gt;<br />
    &lt;/table&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
[/html]</p>
<p>Please don&#8217;t forget to include the <em>knockout.validation.js</em> in your page. If everything is ready, run your application and see the output. </p>
<div id="attachment_12077" style="width: 656px" class="wp-caption alignnone"><a href="http://sibeeshpassion.com/wp-content/uploads/2017/03/Knockout-JS-validation-with-plugin-demo.gif"><img decoding="async" aria-describedby="caption-attachment-12077" src="http://sibeeshpassion.com/wp-content/uploads/2017/03/Knockout-JS-validation-with-plugin-demo.gif" alt="Knockout JS validation with plugin demo" width="646" height="483" class="size-full wp-image-12077" /></a><p id="caption-attachment-12077" class="wp-caption-text">Knockout JS validation with plugin demo</p></div>
<p>That&#8217;s all for today. You can always download the source code attached to see the complete code and application. Happy coding!.</p>
<p><strong>References</strong></p>
<li><a href="http://knockoutjs.com/documentation/extenders.html" target="_blank">Knockout JS</a></li>
<li><a href="https://github.com/Knockout-Contrib/Knockout-Validation" target="_blank">Knockout-Validation Plugin</a></li>
<p><strong>See also</strong></p>
<li><a href="http://sibeeshpassion.com/category/client-side-technologies/knockout-js/" target="_blank">Articles related to Knockout JS</a></li>
<p><strong>Conclusion</strong></p>
<p>Did I miss anything that you may think which is needed? Could you find this post as useful? I hope you liked this article. Please share me your valuable suggestions and feedback.</p>
<p><strong>Your turn. What do you think?</strong></p>
<p>A blog isn’t a blog without comments, but do try to stay on topic. If you have a question unrelated to this post, you’re better off posting it on C# Corner, Code Project, Stack Overflow, Asp.Net Forum instead of commenting here. Tweet or email me a link to your question there and I’ll definitely try to help if I can.</p>
<p>Kindest Regards<br />
Sibeesh Venu</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mail.sibeeshpassion.com/knockout-js-validations-without-a-plugin-and-using-a-plugin/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
