zoukankan      html  css  js  c++  java
  • ASP.NET MVC如何在Action中返回脚本并执行

    我们都知道在aspx页面的cs文件中只要用Respos.Write("<script></scritp>")就可以在前台执行脚本

    但是在MVC中就不一样了,返回脚本要给定脚本类型返回。如果是使用js或者jq的ajax去请求可以直接使用毁掉函数来执行返回脚本,但如果给一个button或者一个a标签添加点击事件时并且要求后台可以返回并执行脚本,可以有一下几种情况。

    第一,return Conten(("<script>alert('666')</scritp>"),这样你会发现脚本也会执行但是点击确定后会出现一片空白,这还是由于action的特殊返回条件。

    第二,  return JavaScript("");返回脚本,这样会发现刷新的脚本还是可以执行但是弹窗alert()根本不会执行。对于这种用法其实才是经常用到的,这时我们只需要在标签上添加 data-ajax-method="post" 和属性data-ajax="true"例如:

    <a class="btn"  data-ajax-method="get" data-ajax="true">添加</a>     

    按照第二种试一下是不是完全没问题。

    如果按照上述操作还是不能执行js脚本,分析如下:

    1.是否引用jquery.unobtrusive-ajax.js,这个js是ajax执行的先决条件。

    2.引用js后是否在配置文件中配置UnobtrusiveJavaScriptEnabled

      <appSettings>
     <add key="UnobtrusiveJavaScriptEnabled" value="true" />
     </appSettings>
  • 相关阅读:
    【题解】魔术棋子
    NHOI2019小结
    【题解】滑雪
    【题解】最大平台
    【题解】洪水
    【题解】N皇后问题
    【题解】四色定理
    使用Docker快速搭建Jenkins
    使用Docker快速搭建Gitlab
    测试用Docker Swarm环境搭建
  • 原文地址:https://www.cnblogs.com/loyung/p/7028936.html
Copyright © 2011-2022 走看看