我是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>
}
请指导我
答案 0 :(得分:2)
这是正常的降级。 试试这个:
@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”)专有指定的地址来加载数据。否则,请求将通过帖子(索引视图)发送