我正在尝试创建一个btn click
函数,该函数将返回插入的xml
的{{1}}
当用户插入ID
时,它需要返回ID: 1122
格式,如图片所示。
然后我使用xml
和text field
创建View,以避免像在button
中输入路由一样
http://localhost:57285/Api/Akontas/515534
然后我创建了一个JavaScript函数,以从控制器中调用Action方法
address bar
然后在控制器中,我创建一个ActionResult返回<br /><br />
<form>
<div class="form-group">
<label>A_KONTO</label>
<input type="text" class="form-control" aria-describedby="AKONTO BROJ" placeholder="Unesite broj AKONOTO">
</div>
<div class="form-group">
<a asp-action="Index" class="btn btn-primary" id="aKonto" onClick=' return aKontoSubmit()'>Provjeri</a>
</div>
</form>
@section scripts{
<script>
function aKontoSubmit() {
$.ajax({
type: "GET",
url: '@Url.Action("GetAKONTA", "Akontas")',
data: $('form').serialize(),
dataType: "xml",
success: function (result) {
// action to do after form submit
},
error: function () {
alert("Ne postoji AKONTO pod tim rednim brojem");
}
});
}
</script>
}
AKONTAS by ID
这是我的路由课程
// GET: api/Akontas/5
[ResponseType(typeof(AKONTA))]
public IHttpActionResult GetAKONTA(string id)
{
AKONTA aKONTA = db.AKONTAS.Find(id);
if (aKONTA == null)
{
return BadRequest("Ne postoji A_KONTO pod tim rednim brojem");
}
return Ok(aKONTA);
}
当我运行应用程序并通过ID时,我总是得到
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
namespace AkontasWebApi
{
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
}
}
检查控制台后,我看到错误
alert("Ne postoji AKONTO pod tim rednim brojem");
我不知道哪里出错了,但是我相信这是我的路由目录中某个地方的问题,如果我错了,请纠正我!