ASPX:升级到IE9后并不总是调用PageMethodes

时间:2014-04-16 11:37:21

标签: javascript asp.net vb.net webforms

该应用程序在IE8中运行良好。 当我升级到IE9时,出现了问题。 代码没有改变。

在javascript中有一个函数,它使用参数调用服务器端子例程。 问题是:有时执行子程序,有时不执行,甚至参数/数据都是相同的。

我所做的是:

  • 将该网站添加为“Internet选项/安全”中的可信任方
  • 在aspx文件的标题中添加:< meta http-equiv="X-UA-Compatible" content="IE=8" />

但是它不起作用,同样的问题:有时它起作用,有时不起作用。

这是aspx文件中的javascript:

function IsOK() 
{
//alert("in isOK.")

var erro = '';
var MasterID = document.getElementById('<%= hid_masterID.ClientID %>').value;
var IID = document.getElementById('<%= hid_ID.ClientID %>').value;
var PostID = document.getElementById('<%= ddlGemeente.ClientID %>').value;  
var FunctieID = document.getElementById('<%= ddlFunction.ClientID %>').value;
var StatusID = document.getElementById('<%= ddlNewStatus.ClientID %>').value;
var ResultaatID = document.getElementById('<%= ddlResultaat.ClientID %>').value;
//alert("now goes to server side.")
PageMethods.saveData(MasterID, IID, PostID, FunctieID, StatusID, ResultaatID);
}

在aspx中我有这样的ScriptManager:

<asp:ToolkitScriptManager ID="tsmanager" runat="server" ScriptMode="Release"   EnablePageMethods="True"></asp:ToolkitScriptManager>

在服务器端(aspx.vb):

<System.Web.Services.WebMethod()> _
Public Shared Sub saveData(ByVal MasterID As Integer, ByVal IID As Integer, ByVal PostID As Integer, ByVal FunctieID As Integer, ByVal StatusID As Integer, ByVal ResultaatID As Integer)
    Dim cn As New SqlConnection
    Dim cmd As New SqlCommand
    Dim conn As New SqlConnection(System.Configuration.ConfigurationManager.AppSettings.Item("strConn"))

    saveLogfile(MasterID, IID, Usernaam, "In saveData serverside (solldetail_wijzigen.aspx) geraakt op: " + Date.Now().ToString())

    cn = conn
    cmd.Connection = cn
    cmd.CommandType = CommandType.StoredProcedure
    cmd.CommandText = "uspSoll_SollDetailUpdate"
    cmd.Parameters.Add("@MasterID", SqlDbType.Int).Value = MasterID
    cmd.Parameters.Add("@IID", SqlDbType.Int).Value = IID
    cmd.Parameters.Add("@PostID", SqlDbType.Int).Value = PostID
    cmd.Parameters.Add("@FunctieID", SqlDbType.Int).Value = FunctieID
    cmd.Parameters.Add("@StatusID", SqlDbType.Int).Value = StatusID
    If ResultaatID = 1 Then
        cmd.Parameters.Add("@ResultaatID", SqlDbType.Int).Value = 0
    Else
        cmd.Parameters.Add("@ResultaatID", SqlDbType.Int).Value = ResultaatID
    End If
    cn.Open()
    Try
        cmd.ExecuteNonQuery()
    Catch ex As Exception
        saveLogfile(MasterID, IID, Usernaam, ex.Message.ToString)
    End Try
    cn.Close()
End Sub

我已经搜索了这个bug 2天了,但是我无法解决它。 任何人都可以让我为什么有时会工作,有时候不行。

提前致谢。 Juliando

0 个答案:

没有答案