如何在没有Code Behind

时间:2015-11-04 10:40:04

标签: javascript c# asp.net iframe

我不知道是否有可能,我尝试了很多方法,但似乎没有什么工作在我正在进行的项目中。

这是交易:我有一个ASPX页面需要在单击按钮时调用Web服务。我无法使用代码和页面方法,因为我的页面无法继承

System.Web.UI.Page

我工作中的惯例并没有让我们使用代码。

我尝试使用Ajax(异步和同步)方法与“XMLHttpRequest”调用“.cs”类。在我的独立它工作得很好但是当我将它集成到项目中时它不起作用(Iframe在主页内的Iframe里面的iframe)。

我不能使用外部库(Jquery,...)之类的东西。我想知道如果在我正在处理的ASPX页面内,我可以用其他方式调用我的class.cs,并尝试调用我的代码。

我有:

<input type="button" onclick="callSomeJSfunction()" value="testC#" />

我的JavaScript做了一些处理(在没有所有DOM组件的情况下获取我需要的文本,并且只保留文本

)然后应该通过调用Web服务来调用服务器部分(由于跨域问题,我无法从JS调用Web服务)。

我的class.cs调用Web服务是:

namespace testProlexis

{
    public class prolexisWSCorrector
    {
        public static string callProlexis(string textToCorrect)
        {
            if (string.IsNullOrEmpty(textToCorrect))
            {
                throw new Exception("pas de texte à corriger pour Prolexis");
            }
            prolexisWebServiceImpl.ProLexisService test = new prolexisWebServiceImpl.ProLexisService();
            prolexisWebServiceImpl.AnalyzerInput inPut = new prolexisWebServiceImpl.AnalyzerInput();
            prolexisWebServiceImpl.AnalyzerOutput outPut = new prolexisWebServiceImpl.AnalyzerOutput();

            inPut.text = textToCorrect;
            String info ="try5";
            outPut = test.analyze(inPut, working);
            int tytytyty = outPut.errors.Count();
            return textToCorrect;
}

我不知道怎么做,我是ASP.NET的初学者(我以前在JEE工作)。所以,如果有人有想法或某些教程,我可以帮助我,我很乐意接受它。

感谢您抽出时间帮助我。

2 个答案:

答案 0 :(得分:0)

如果您在aspx页面中尝试使用C#而没有代码(不推荐),您只需将其添加到aspx页面的脚本标记中即可。

<script language="C#" type="text/C#" runat="server">
    public void DoStuff(object sender, EventArgs e)
    {
        var proxy = new prolexisWSCorrector();
    }
</script>

<asp:Button ID="" runat="server" Click="DoStuff" />

或者

<input type="submit" runat="server" onClick="DoStuff" />

答案 1 :(得分:0)

在您的Aspx表单中,javascript函数如下,

         function callSomeJSfunction() {
               jQuery.ajax({
                        type: "POST",
                        url: "YourForm.aspx/YourPublicStaticWebMethod",
                        data: "{'ID': '" + txtID.value+ "','Value': '" + txtYear.value '}",
                        contentType: "application/json; charset=utf-8",
                        dataType: "json",
                        success: function (msg) {
                           /*Do Success*/
                              },
                       Error:function(er){
                            /*Do Error*/
                              }
                          });
                                       }

在你的Aspx表格中,代码背后,

[System.Web.Services.WebMethod]
public static Function YourPublicStaticWebMethod(int id,string year)
{
 //Code Here
}