In my code below I'm trying to pass 2 parameters to an Ajax call, however when loading the page, I'm getting a javascript error shown below. Note this error happens even before i attempt to trigger the ajax with a button click (the code shown below is in a working button click event handler code).

When I comment out the .post() block of code, the page loads fine without any javascript errors. Below is the code. This is the first time i'm passing 2 parameters to ajax .post() after refering to this post on how to do it. Sending Multiple variables with Jquery ajax
Can anyone tell me whats wrong with my code? Both my alert statements work fine and display correct data. Note i'm using Cakephp so there's some cakephp syntax there.
//Get the merchant config
alert("you got here!");
bookingdate = $(this).parent().parent().find("#bookingdate").serialize();
merchant_id = $(this).parent().parent().find("#merchant_id").serialize();
alert (bookingdate + " " + merchant_id);
$.post( "<?php echo Router::url(array('controller'=>'MCP','action'=>'getMtRestaurant')); ?>", {bookingdate, merchant_id}, function() {
})
.done(function(data) {
alert(data.response);
//parseddata = JSON.parse(data);
$('.ajax_booking_edit').append(data);
})
.fail(function() {
alert( "There was a problem retrieving the booking!" );
})
.always(function() {
//alert( "finished (always)" );
});
I'm showing below the alert popup that displays the bookingdate and merchant_id after being serialized.

<?php Router.....which is wrong, you need to pass there url....