Tag: 路由

如何发送jQuery $ .get以便Model Binder可以将字符串绑定到参数?

我很难让Model Binder工作。 我认为这是jQuery,所以我问了这个问题 ,但经过进一步的调查,我可以看到jQuery确实是将参数发送到服务器。 这就是我提出一个新问题的原因 – 这不再像我原先想的那样是一个jQuery问题。 背景: 我正在做的是向我的Action方法发送一个GET请求,如下所示: $.get($(this).attr(“href”), { “searchExpression”: “schroders” }, function (result) { // do stuff }, “html”); 这会创建以下URL: HTTP://本地主机:65091 /搜索/标签searchExpression =施罗德 我认为这会有效,并填充了Action方法: public PartialViewResult Tabs(string searchExpression) { return PartialView(new SearchViewModel { PagedFunds = _fundService.GetFunds(searchExpression) }); } 但是这个方法的路线定义为: routes.MapRoute( null, “search/{action}/{searchExpression}”, new { controller = “search”, action = “QuickSearch”, searchExpression = […]

如何使用hasher.js和crossroads.js重新加载路线?

我目前有这个代码: crossroads.addRoute(‘/login’, function(){ $.ajax({ url: ‘/login’, type: ‘GET’, data: { }, success: function(msg) { $(‘#’ + main_window).html(msg); } }) }); 与此hasher.js一起用于维护历史记录: function parseHash(newHash, oldHash){ crossroads.parse(newHash); } hasher.initialized.add(parseHash); //parse initial hash hasher.changed.add(parseHash); //parse hash changes hasher.init(); //start listening for history change $(‘a’).on(‘click’, function(e) { e.preventDefault(); hasher.setHash($(this).attr(‘href’)); }); 现在,当我有一个显示#/ login并点击它的链接时,登录页面可以正常加载。 但是,如果用户再次单击登录链接,则不会重新加载页面。 我知道点击正在注册,但路由/散列没有触发。 我该如何设法做到这一点? 任何帮助将不胜感激。 谢谢!

使用jQuery AJAX的ASP.Net MVC路由问题

我的页面是domain.com/home/details/1 在我的jQuery AJAX调用中,我有以下内容,但当它调用它调用domain.com/home/details/home/getdata时 我该怎么做才能让它得到妥善解决? $(document).ready(function () { oTable = $(‘#example’).dataTable({ “bServerSide”: true, “sAjaxSource”: “Home/GetData/”, “bProcessing”: true, “bPaginate”: true, “sPaginationType”: “full_numbers”, “bFilter”: true, “bAutoWidth”: false, “fnServerData”: function (sSource, aoData, fnCallback) { /* Add some extra data to the sender */ //aoData.push({ “filtervalue”: $(‘#filtervalue’).val(), “Options”: $(‘#Options’).val() }); $.getJSON(sSource, aoData.concat($(‘form’).serializeArray()), function (json) { /* Do whatever additional processing […]

Rails使用checkbox和jquery ajax更改布尔值

我是rails的新手,并尝试通过复选框和使用jquery ajax更改布尔值: “task-check” %> 和javascript: $(“.task-check”).bind(‘change’, function(){ if (this.checked){ var bool = this.checked ? 1 : 0; $.ajax({ url: ‘/todos/toggle’, type: ‘POST’, data: ‘{“task_id”:”‘+ this.value +'”, “bool”:”‘+ bool +'”}’ }); } else { alert(“no”); } }); 那么控制器: def toggle(task_id, bool) @task = Todo.find_by_id(task_id) if @task != nil? @task.update_attributes(:completed => bool) else set_flash “Error, please try […]

使用ASP.NET MVC在JS文件中为jQuery设置ajax url

当我正在对MVC操作进行Ajax调用时,我在View中有我的javascript,而不是在自己的JS文件中。 这样做非常容易: var xhr = $.ajax({ url: ‘/’ + el1.siblings(“input:hidden”).val(), data: { ajax: “Y” }, cache: false, success: function(response) { displayMore(response, el1, xhr) } }); …然后在JS中使用Url.Action()包含在ajax调用中的URL非常简单。 如果不对URL进行硬编码,我怎么能移动这个自己的JS文件呢?