从Html页面调用Controller方法

时间:2014-09-09 11:12:39

标签: c# html asp.net .net asp.net-web-api

我创建了一个Html页面,说SomePage.Html,我希望每当我访问此页面时,都应该调用一个方法。

假设我创建了一个Controller DefautController,并且它有一个名为 - Get()的方法,然后每当我访问" ../ SomePage.Html"然后这个" Get()"应该提出来。

SomePage.Html: -

<!DOCTYPE html>
<html>
<head>

    <title>Test</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script type="text/javascript">
        function codeAddress() {

            alert('ok');
        }

    </script>
</head>
<body onload="codeAddress();">

</body>
</html>

DefaultController: -

public class DefaultController : Controller
{
    // GET: Default
    public ActionResult Index()
    {
        return View();
    }


    [System.Web.Http.HttpGet]
    public IHttpActionResult Get()
    {
    }
}

我该怎么做?我对此非常天真 - WebApi / Asp.net的事情。谢谢:))

2 个答案:

答案 0 :(得分:1)

你可以使用jQuery

<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>

    $.ajax({
        type: 'GET',
        url: '/Default/index',
        data: { },
        cache: false,
        success: function(result) {
                 alert(result);

        }
    });

</script>

答案 1 :(得分:0)

您必须在网址

中提供方法名称Get而不是index方法
 $.ajax({
                            url: '@Url.Action("Get", "Default")',
                            data: {},
                            type: 'GET',
                            datatype: "json",
                            contentType: 'application/json; charset=utf-8',
                            async: false,
                            success: function (data) {
                                alert(data.results);
                            }
                        });