繁体   English   中英

从asp.net核心控制器返回JavaScript

[英]Returning JavaScript from asp.NET core controller

我知道有很多关于此的帖子,但是我无法获得任何建议,例如...

Return Content("<script>alert('Hello world!');</script>")

... 上班

我们将要从MVC转移到核心-这在MVC中起作用并显示了引导程序模式,但我收集的对这种方法的支持已被删除。

这就是启动模态“ PopupModal”的原因

 Public Function ModalValidation(Message As String) As String
    Try
        Dim SB As New StringBuilder
        SB.Append("$(document).ready(function(){")
        SB.Append("$('#PopupModal').modal();")
        SB.Append("var vBody = document.getElementById('ModalBodyText');")
        SB.Append("vBody.innerHTML = '" & Message & "';")
        SB.Append("var vTitle = document.getElementById('ModalTitle');")
        SB.Append("vTitle.innerHTML = 'Validation';")
        SB.Append("vTitle.style.color = 'orange';")
        SB.Append("});")
        Return SB.ToString
    Catch ex As Exception
        EmailError(ex, 170, "Functions")
        Return Nothing
    End Try
End Function

并在控制器上

 Private Function Modal(ModalScript As String) As JavaScriptResult
        Return JavaScript(ModalScript)
    End Function

这样叫

Return Modal(ModalValidation("Got here"))

看起来我可以像这样重新创建JavaScriptResult

Public Class JSResult
        Inherits ContentResult
        Public Sub New(ByVal script As String)
            Me.Content = script
            Me.ContentType = "application/javascript"
        End Sub
    End Class

但是那我用什么代替

Return JavaScript(ModalScript)

谢谢

弄清楚了

 Private Function Modal(ModalScript As String) As JSResult
        Return New JSResult(ModalScript)
    End Function
public ActionResult Welcome(){
  return Content("You are welcomed");
}

通过ajax调用此函数并处理响应。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM