c# - 提交表单并重定向后,MVC5 无法使用 ajax 获取 php api
问题描述
我正在使用 MVC5。想要提交表单,然后将所有输入值传递给 php api。
如果我使用表单提交我的输入,将值传递给 php api 并且不重定向到其他操作,它将起作用。
但是如果我在提交表单后重定向到索引,它将失败。
提交后我必须重定向到索引,但不知道如何修复。
我已经测试了我的 api 并且它有效。
这是html视图:
<form id="registerForm" method="post" action="~/OverTime/Add">
<input type="text" class="form-control" id="OverTime_Description" name="OverTime_Description" />
<input class="form-control" id="DateStart" name="DateStart" type="text"/>
<button onclick="log()" id="submit" type="submit">add</button>
</form>
这是 ajax php api:
function log() {
var OverTime_Description = $('#OverTime_Description').val();
var DateStart = $('#DateStart').val();
if (OverTime_Description != "" && DateStart != "") {
$.ajax({
url: 'https://severip/lineMsg.php?Group=101&Message=' + OverTime_Description + ":" + DateStart,
type: 'GET',
success: function (data) {
},
error: function () {
}
});
}
}
传递两个输入文本值,其 ID 为 OverTime_Description 和 DateStart。
我在 OverTime crontroller 中的重定向:
public ActionResult Add()
{
try
{
ViewBag.Overtimess = OverTimeRepository.GetCollections().ToList();
ViewBag.Members = MemberRepository.GetCollections().ToList();
if (Request.Form.Count > 0)
{
OverTime _overTime = new OverTime();
_overTime.OverTime_Description = Request.Form["OverTime_Description"];
_overTime.OverTime_StartDate = DateTime.Parse(Request.Form["DateStart"]);
return RedirectToAction("Index");
}
return View(OverTimeRepository.GetCollections());
}
catch
{
return RedirectToAction("Index", "Error");
}
}
解决方案
推荐阅读
- tomcat - Tomcat 重新启动引发有关缺少 destroy() 方法的错误
- python - 使用 .Create() 时出现错误消息 'NameError: name 'filename' is not defined'
- type-hinting - 如何定义不是类的泛型类型?
- osgi - 以编程方式获取 Liferay 7.2 中部署的 Portlet 列表
- sql - SQL 中的 LISTAGG 返回具有空值的行
- discord - 如何使用 Eris Discord 在频道中以文件的形式发送数据
- ios - 放大的按钮和屏幕
- sql - SQL 查询字段中的字符串文字
- android - 我可以在使用自定义键盘时访问 EditText setText 方法吗?
- elasticsearch - 弹性搜索 - 如何在时间间隔内返回记录