0

我在页面中有一个下拉列表和按钮,如下所示:

@Html.DropDownList("MovieType")

<input id="btnBk" type="button" value="Back" onclick="location.href = '/Test/Index/'"  />

下拉列表填充在控制器中:

public ActionResult DDL()
{
    List<SelectListItem> items = new List<SelectListItem>();

    items.Add(new SelectListItem { Text = "Action", Value = "0" });

    items.Add(new SelectListItem { Text = "Drama", Value = "1" });

    items.Add(new SelectListItem { Text = "Comedy", Value = "2", Selected = true });

    items.Add(new SelectListItem { Text = "Science Fiction", Value = "3" });

    ViewBag.MovieType = items;

    return View();
}

选择下拉列表项后,我尝试将按钮 onclick 从原始 /Test/Index/ 更改为 /Test/Index1 :

$(document).ready(function () {            
    $('#MovieType').change(function () {
        var href = $('#btnBk').attr("onclick");
        alert(href);
        $('#btnBk').attr('onclick', "location.href='/Test/Index1/'");
        href = $('#btnBk').attr("onclick");
        alert(href);
    })
});

警报消息表明 onclick 值已更新。但是更改后点击返回按钮时,没有响应,而是重定向到/Test/Index1。

有什么遗漏吗?

在此先感谢,本

4

1 回答 1

1

从您的元素中删除 onclick 属性并使其像这样。充分利用 jQuery 进行操作。

$(document).ready(function () {            
      $('#btnBk').click(function(){
             location.href='/Test/Index/';
        });

    $('#MovieType').change(function () {
        $('#btnBk').unbind('click').click(function(){
             location.href='/Test/Index1/';
        });
    })
});
于 2013-03-27T09:11:49.397 回答