- Details
 - Written by: Stanko Milosev
 - Category: jQuery
 - Hits: 4229
 
If you have form post method, like:
<form name="myForm" action="/myController/DoSomething?someId=myId" method="post">
and you want myId to change to something else, then you can use this code:
var myPom = $("form[name=myForm]").attr('action');
myPom = myPom.replace("myId", "123");
$("form[name=myForm]").get(0).setAttribute('action', myPom);
    
    
    
        - Details
 - Written by: Stanko Milosev
 - Category: jQuery
 - Hits: 4376
 
One example of jQuery infinite loop, and sending of pure string:
function YoThisIsAtest() {
    $.ajax({
        url: 'test/testera',
        type: 'POST',
        data: { latitude: $('#Latitude').val(), longitude: $('#Longitude').val(), culture: $('#Culture').val() },
        datatype: "text"
    }).done(function (msg) {
        if (!bolStop) {
            $('#myResult').html($('#myResult').html() + "
" + msg);
            YoThisIsAtest();
        }
    });
}
And C§ code should look like:
public string testera(double latitude, double longitude, string culture)
{
  return "Some text";
}
    
    
    
        - Details
 - Written by: Stanko Milosev
 - Category: jQuery
 - Hits: 4182
 
Just few jQuery lines of code:
Take cell value from DataTables.net:
 $("#myTable").data().oTable.fnGetData(0).
Date Convert string to date using current format:
$.datepicker.parseDate($.datepicker._defaults.dateFormat, myStringDate)
Increment date:
date.setDate( date.getDate() + 1 );
To have dialog inside of dialog, then I have to close existing one (at this moment I don’t know if there is possibility to have two modal windows at the same time)
$(this).dialog('close');
dialogs.alertUI("Export confirm", "Are you sure?", myTest, null); 
Delete all single quotes from a string:
myMessage.replace(/'/g, "");
- Details
 - Written by: Stanko Milosev
 - Category: jQuery
 - Hits: 4857
 
If you are adding fields dynamically, and you want to have unobtrusive validation, then you can use following code:
var $nazivIndex = -1;
function addNewFieldNaziv() {
    $nazivIndex++;
    var $nazivEf = $('#nazivEf');
    $nazivEf.append('<p/><input class="text-box single-line valid" id="Naziv' + $nazivIndex
        + '" name="Naziv' + $nazivIndex
        + '" type="text" value="Stanko Milosev" data-val="true" data-val-required="The Naziv field is required."/> <span class="field-validation-valid" data-valmsg-for="Naziv' + $nazivIndex + '" data-valmsg-replace="true"></span>');
    
    var form = $("#myID");
    form.removeData('validator');
    $.validator.unobtrusive.parse(form);
}
Validation has to be removed, and then binded again. Also, in your ASP.NET MVC3 view you have to add following scripts:
<script src="/@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="/@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
<script src="/@Url.Content("~/Scripts/MicrosoftAjax.js")" type="text/javascript"></script>
<script src="/@Url.Content("~/Scripts/MicrosoftMvcAjax.js")" type="text/javascript"></script>
<script src="/@Url.Content("~/Scripts/MicrosoftMvcValidation.js")" type="text/javascript"></script>
Here you can download my MVC3 application, code is dirty :) but you can see an example if you go on http://localhost:7307/Default1/Edit/1# for instance (Default1 controller, Edit method). Here you can see pure html example, or here you can download packed source. Unfortunately, you will see that this code is also dirty, I have two times $("#myID").validate, on the beginning and on the end, otherwise it didn't want to work, and I have no idea why.
In my MVC3 application in file unobtrusive_validation\unobtrusive_validation\Views\Default1\Edit.cshtml you will see code like:
<script src="/@Url.Content("~/Scripts/MicrosoftAjax.js")" type="text/javascript"></script>
<script src="/@Url.Content("~/Scripts/MicrosoftMvcAjax.js")" type="text/javascript"></script>
<script src="/@Url.Content("~/Scripts/MicrosoftMvcValidation.js")" type="text/javascript"></script>
<script src="/@Url.Content("~/Scripts/addFields.js")" type="text/javascript"></script>
and
@using (Html.BeginForm("Edit", "Default1", FormMethod.Post, new { id = "myID" }))
{
Without these lines validation will not work, of course in model in the file unobtrusive_validation\unobtrusive_validation\Models\Partner.cs you will see
[Required]
public string Naziv { get; set; }
"Naziv" means name btw :)
---
On the end my problem was solved as it was described here. Also, one my simple validation you can find here.