0

VS2010内からこれを実行していますが、フォームが送信されると、「Microsoft JScriptランタイムエラー:オブジェクトはこのプロパティまたはメソッドをサポートしていません」というエラーが表示されます。助言がありますか?

<script type="text/javascript">
function BlockUI() {
    $.blockUI({ message: "<h1>Remote call in progress...</h1>" });
}
</script>

@using (Ajax.BeginForm("Switch", new AjaxOptions()  {
        UpdateTargetId = "Switch" + Model.Id, 
        InsertionMode = InsertionMode.Replace,
        OnSuccess = "",
        OnBegin = "BlockUI()",
        OnComplete = "",
        OnFailure = "alert('Failed to update switch')",
        Confirm = "",
        HttpMethod = "POST",
        LoadingElementId = "",
        Url = ""
    }))
4

1 に答える 1

1

変更する必要があります

OnBegin = "BlockUI()",

OnBegin = "BlockUI"

MSDNによると、 OnBegin次のようになります。

ページが更新される前に呼び出すJavaScript関数の名前。

追加()すると、おそらく基礎となるJavaScriptが関数をすぐに実行し、エラーが発生します。

同様に、OnFailure

OnFailure = "function() { alert('Failed to update switch'); }",

また、使用していないプロパティ値を指定する必要はありませAjaxOptionsん。

@using (Ajax.BeginForm("Switch", new AjaxOptions()  {
        UpdateTargetId = "Switch" + Model.Id, 
        InsertionMode = InsertionMode.Replace,
        OnBegin = "BlockUI",
        OnFailure = "function() { alert('Failed to update switch'); }",
        HttpMethod = "POST"
    }))
于 2011-03-08T01:28:34.617 に答える