Попробуйте использовать Url.Action для сопоставления URL-адресов, чтобы они были правильными, независимо от того, какой виртуальный корень.
$.post( '<%= Url.Action( "SomeMethod", "SomeController" ) %>'
data,
function() { ...callback.. },
'json' );
Если это по-прежнему не работает, то, возможно, нам нужно будет настроить ваш маршрут. Также было бы полезно узнать, работает ли ActionLinks, а jQuery AJAX - нет. Если дело обстоит именно так, и URL-адреса совпадают, возможно, у вас нет правильных URL-адресов для ваших файлов Javascript. В этом случае вы захотите использовать Url.Content для сопоставления этих URL-адресов, чтобы они всегда были правильными.
<script type="text/javascript"
src='<%= Url.Content( "~/Scripts/jquery-1.3.2.js' ) %>'>
</script>