我将不胜感激。

我试图通过Kendo Grid href事件每次更改链接change()

 function ContractsGrid_onChange(e) {
    var selected = this.select()[0],
        item = this.dataItem(selected);

    $('#createOnBase').attr('href', function () {

        var createLink = document.getElementById("createOnBase");
        var route = 'http://' + createLink.hostname + createLink.pathname + "?contractID =" + item.ID;

        return route;

    });
  }

 @Ajax.ActionLink("Create", "CreateOnBase",
                  new { contractID = "_contractID_" },
                  new AjaxOptions() {... },
                  new { id="createOnBase" })


我不确定当前的方法,因为我有不同的主机名(具有端口或服务器域的localhost)

最好的方法是:

var route = "@Url.Action('CreateOnBase', new { contractID = ??})";


但是我不能在剃刀中使用JS变量(item.ID)。

另外,this.href.replace("_contractID_", item.ID)不能进行多项更改。

您能帮我另一个解决方案吗?

非常感谢!

最佳答案

是的,那很容易,我找到了一种方法:

  $('#createOnBase').attr('href', function () {

        return "@Url.Action("CreateOnBase")"+ "/?contractID="  +item.ID;

    });


也许对某人会有帮助。

09-11 18:48