我是 MVC 的初学者。
我编写了一段代码,将软件列表显示为 Ajax 请求。但是当浏览器中的 javascript 被禁用或不支持时,代码输出将被破坏并显示为长字符串。
我该如何处理这种状态?
如果启用了 javascript,Ajax 代码将被执行,否则将通过 POSTBACK 请求发送请求。
这是我的代码:
@model string
@{
AjaxOptions AjaxOpts=new AjaxOptions{
UpdateTargetId="tabledata"
};
}
@using(Ajax.BeginForm("ListData",AjaxOpts)){
<table>
<thead>
<th>Client Name</th>
<td>dates</th>
</thead>
<tbody id="tabledata">
@Html.Action("ListData",new {id=Model})
</tbody>
</table>
<p>
@Html.DropDownList("id",new SelectList(
new[]{"All","web","Windows"},(Model??"All")))
<input typr="submit" value="Submit"/>
</p>
}
请指导我
最佳答案
这是优雅的退化。 试试这个:
@model string
@{
AjaxOptions AjaxOpts=new AjaxOptions{
UpdateTargetId="tabledata",
Url=Url.Action("ListData")
};
}
@using(Ajax.BeginForm(AjaxOpts)){
<table>
<thead>
<th>Client Name</th>
<td>dates</th>
</thead>
<tbody id="tabledata">
@Html.Action("ListData",new {id=Model})
</tbody>
</table>
<p>
@Html.DropDownList("id",new SelectList(
new[]{"All","web","Windows"},(Model??"All")))
<input typr="submit" value="Submit"/>
</p>
}
如果浏览器能够使用 javascript,则使用 Url=Url.Action("ListData") 专有指定的地址来加载数据。否则,请求将通过邮寄方式发送(索引 View )
关于javascript - 如果启用了 javascript,如何执行 Ajax 请求,否则,请求将通过 POSTBACK?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52486972/