javascript - 如果启用了 javascript,如何执行 Ajax 请求,否则,请求将通过 POSTBACK?

标签 javascript asp.net-mvc asp.net-ajax

我是 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/

相关文章:

ajax - 您如何衡量 Web 服务调用的进度?

javascript - 密码应至少包含 1 位数字 - ValidateJS 中的正则表达式

javascript - 如何打印带缩进的 HTML 代码?

c# - 如何在 asp.net mvc 中处理 'View not found' InvalidOperationException?

asp.net-mvc - asp.net mvc3,数据库中的角色

asp.net-ajax - 将 AsyncPostBackTimeout 设置为较大值(300 秒)是否存在潜在问题?

javascript - 通过javascript打印pdf

javascript - jquery在字符串中查找元素并替换为其他内容

c# - 带有部分页面的客户端的 Outputcache 属性

wcf - aspNet兼容性启用="true"