javascript - 在asp.net mvc的Index.cshtml中没有定义部分?
问题描述
我在索引中定义部分。cshtml 但是当我运行应用程序然后生成一个错误 section is not defined 我创建了相同的另一个项目,然后在索引中定义简单方法。cshtml 然后运行我的应用程序,但不显示我当前的项目弹出窗口??
另一个项目 _layout.cshtml
<div class="container body-content">
@RenderBody()
@RenderSection("simpelmessage")
<footer>
<p>WebApi Crud Oeperation using Entity Framework In Mvc</p>
</footer>
</div>
索引.cshtml
@section simpelmessage{
<h1>simple message</h1>
}
那是在另一个项目中工作
但是我当前的工作项目不应该显示我的弹出窗口??我正在使用 api 执行 crud 操作
_layout.cshtml
<div class="container body-content">
@RenderBody()
@RenderSection("alertpopup")
<footer>
<p>WebApi Crud Oeperation using Entity Framework In Mvc</p>
</footer>
</div>
索引.cshtml
@section alertpopup
{
<script src="https://cdnjs.cloudflare.com/ajax/libs/AlertifyJS/1.13.1/alertify.min.js" type="text/javascript">
$(function () {
var successmessage = '@ViewBag.message'
if (successmessage != '')
{
alertify.success(successmessage);
}
});
</script>
}
家庭控制器.cs
public ActionResult Index()
{
IEnumerable<studentmvcmodel> stdlist;
HttpResponseMessage response = globalvariable.webapiclient.GetAsync("studlogins").Result;
stdlist = response.Content.ReadAsAsync<IEnumerable<studentmvcmodel>>().Result;
ViewBag.message = "record is inserted";
return View(stdlist);
}
public ActionResult create()
{
return View();
}
[HttpPost]
public ActionResult create(studentmvcmodel stud)
{
var username = stud.username;
var passs = stud.password;
if (username != null && passs != null)
{
HttpResponseMessage response = globalvariable.webapiclient.PostAsJsonAsync("studlogins", stud).Result;
ViewBag.message = "data inserted successfully";
return RedirectToAction("Index");
}
else
{
ViewBag.message = "please all the data fillup carefully";
return View("create");
}
}
我的记录应该被创建,但我想在提交记录时弹出消息??但是给出的错误部分没有定义??当我按下提交按钮时,我正在尝试什么,然后应该显示一个弹出窗口但不显示弹出窗口?
我希望我的问题被理解?
我要去浏览器然后ctrl+U然后显示弹出功能。
<script src="https://cdnjs.cloudflare.com/ajax/libs/AlertifyJS/1.13.1/alertify.min.js" type="text/javascript">
$(function popup()
{
var successmessage = 'record is inserted';
if (successmessage != '')
{
//alertify.success(successmessage);
alert('record is inserted');
}
});
popup();
</script>
解决方案
渲染部分有两个参数;一个字符串和一个布尔值:
@RenderSection(string name, bool required)
该name
参数是要渲染的部分的名称,并required
指示必须始终渲染该部分。如果该部分可能无法在某些视图或某个时间呈现,则应将 required 设置为 false ,如下所示。
@RenderSection("alertpopup", false)
我也不确定您希望何时显示弹出窗口,因为它没有在您的代码中调用。如果出于某种原因您希望在加载文档时调用它,则应将代码更改为此
@section alertpopup
{
<script src="https://cdnjs.cloudflare.com/ajax/libs/AlertifyJS/1.13.1/alertify.min.js" type="text/javascript">
$(doucument).ready(function () {
var successmessage = '@ViewBag.message'
if (successmessage != '')
{
alertify.success(successmessage);
}
});
</script>
}
推荐阅读
- javascript - vue.runtime.common.js:当不使用 this.errors 时,“无法读取未定义的属性 '_transitionClasses'”
- uber-api - products v1.2 api 返回池和机场池。如何决定哪一个适用于用户
- c - c语言scanf()中的[ampersn]有什么用
- c++ - 如何从 char 数组 C++ 中提取 2 个整数并将它们存储在 2 个变量中(初学者)
- pyspark - 无法通过 Apache NiFi 中的 ExecuteSparkInteractive 处理器提交 Pyspark 代码
- java - @Valid 注解在应用于 MultipartFile 对象时被忽略
- c# - 获取 ComboBox Bound 多列列表的 SelectedItem
- express - Node-red 中的回调“req”参数等价于什么?
- php - 比较增量字符串
- jquery - DatePicker Bootstrap:选择后反转日期和月份