Asp.net mvc Sys.ArgumentUndefinedException:值不能未定义

Asp.net mvc Sys.ArgumentUndefinedException:值不能未定义,asp.net-mvc,asp.net-ajax,Asp.net Mvc,Asp.net Ajax,我正在asp.NETMVC框架测试版上开发一些ajax内容 但是,我得到了如下例外。 有人有我这样的问题吗 Sys.ArgumentUndefinedException:值不能未定义 我的源代码是这样的 <asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server"> <script src="../../Scripts/jquery-1.2.6.js" type="text/j

我正在asp.NETMVC框架测试版上开发一些ajax内容

但是,我得到了如下例外。 有人有我这样的问题吗

Sys.ArgumentUndefinedException:值不能未定义

我的源代码是这样的

<asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server">

<script src="../../Scripts/jquery-1.2.6.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftAjax.debug.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcAjax.debug.js" type="text/javascript"></script>

<script type="text/javascript">
    var myView;

    $(pageLoad);

    function pageLoad() {
        myView = $create(Sys.UI.DataView, {}, {}, {}, $get("ajaxResult"));
        $("#callAjaxButton").click(callActionMethod);
    }

    function callActionMethod() {
        $.getJSON("/Home/GetCategories", bindData);
    }

    function bindData(data) {
        myView.set_data(data);
    }

</script>

<input type="button" id="callAjaxButton" value="ajaxCall" />

<div id="ajaxResult"></div>    

</asp:Content>

var myView;
$(页面加载);
函数pageLoad(){
myView=$create(Sys.UI.DataView,{},{},{},{},{},$get(“ajaxResult”);
$(“#callAjaxButton”)。单击(callActionMethod);
}
函数callActionMethod(){
$.getJSON(“/Home/GetCategories”,bindData);
}
函数绑定数据(数据){
myView.set_数据(数据);
}

从您提供的代码片段中,有几点需要考虑:

  • 您缺少对的脚本引用

  • 您使用的是jquery函数(在DOM准备好被遍历和操作时引发),而不是事件(在加载所有脚本之后但在创建对象之前引发)

你能试试看它是否适合你吗:

<script src="../../Scripts/jquery-1.2.6.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftAjax.debug.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcAjax.debug.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftAjaxTemplates.debug.js" type="text/javascript"></script>

<script type="text/javascript">
    var myView;

    Sys.Application.add_init(pageLoad);

    function pageLoad() {
        myView = $create(Sys.UI.DataView, {}, {}, {}, $get("ajaxResult"));
        $("#callAjaxButton").click(callActionMethod);
    }

    function callActionMethod() {
        $.getJSON("/Home/GetCategories", bindData);
    }

    function bindData(data) {
        myView.set_data(data);
    }

</script>

<input type="button" id="callAjaxButton" value="ajaxCall" />
<div id="ajaxResult"></div>    

var myView;
Sys.Application.add_init(页面加载);
函数pageLoad(){
myView=$create(Sys.UI.DataView,{},{},{},{},{},$get(“ajaxResult”);
$(“#callAjaxButton”)。单击(callActionMethod);
}
函数callActionMethod(){
$.getJSON(“/Home/GetCategories”,bindData);
}
函数绑定数据(数据){
myView.set_数据(数据);
}
在这个问题上写了一篇好文章