将动作分配给动态创建的mvc3中的html按钮

时间:2012-08-23 11:40:34

标签: c# asp.net-mvc

我是mvc的新手。我动态创建了html按钮,我无法为这些按钮分配动作

代码是:

sb.Append("<li style=\"margin:17px;\">");
        sb.Append("<img src=\"" + path + "Content/HeaderSlides/FullImages/" 
                  + imagename + "\" width=\"180\" height=\"100\"/>");

        sb.Append("<input type=\"button\"  name=\"deleteimage" + id 
                  + " \" id=\"btndelete" + id 
                  + "\" value=\"Delete\" class=\"t-button t-grid-delete\" " 
                  + " style=\"margin-left:10px;\" />");

我想让html按钮像这样:

<input type="submit" 
       title="Delete" 
       value="Delete" 
       name="btndelete" 
       onclick="location.href='@Url.Action("DeleteHeaderSlide", 
                                           "HeaderSlides",
                                           new { filename = "Sunset.jpg" })'" />

2 个答案:

答案 0 :(得分:1)

你最好使用jquery。

$(document).ready(function(){
    $('input[name=btndelete]').bind('click', function() {
       window.location.href='@Url.Action("DeleteHeaderSlide", 
                                       "HeaderSlides",
                                       new { filename = "Sunset.jpg" })';
    });

});

答案 1 :(得分:0)

如果您能够使用代码创建html按钮,则最简单的定义/分配操作的方法是

string action = "<script>function yourFunction() {alert('hi');}</script>";
string btnCraeteCode = "<input type='button' onClick='yourFunction()' />";    
sub.Append(action+btnCraeteCode);

您也可以在页面的head标签中的脚本中定义yourFunction()

在这种情况下,您不需要在createButton

之前添加操作字符串