CS0117:aspx页面不包含函数定义

时间:2016-08-29 16:52:47

标签: c# asp.net dropdown

我正在使用aspx页面,单个文件Web表单,通过下拉框捕获客户端的用户输入,然后修改可用的文本框字段(简单示例...如果客户端选择dropbox项目1,则文本框1已启用;如果客户端选择了Dropbox项目2,则启用文本框2。

dropbox html代码如下所示,与事件处理程序OnSelectedIndexChanged的异常完美配合:

<asp:DropDownList ID="FAQ" runat="server" ViewStateMode="Enabled" EnableViewState="true" Width="354px" AutoPostBack="true"          OnSelectedIndexChanged="selectedFAQ()" > 
        <asp:ListItem Text="Please Select" Value="Default"></asp:ListItem>
        <asp:ListItem Text="Text 1 Here" Value="FAQ1"></asp:ListItem>
        <asp:ListItem Text="Text 2 Here" Value="FAQ2"></asp:ListItem>
        <asp:ListItem Text="Text 3 Here" Value="FAQ3"></asp:ListItem>
</asp:DropDownList>

所选函数FAQ()在脚本部分中定义:

function selectedFAQ()
{
    //code to enable/disable text fields here
}

我已经看到了这个问题的几个不同的帖子和答案,但似乎我看到的帖子包含一个aspx和aspx.cs文件...我的页面是单个Web表单。

我还想提一下,该页面不是我的创建,我只是想尝试添加其他功能。最后,有一个“inherits”标签引用了一个我没有代码的3岁dll。

如果此问题已得到解决,请指出正确的问题/答案并表示感谢。如果没有,请提供帮助。如果需要,我可以提供任何其他代码。感谢。

1 个答案:

答案 0 :(得分:1)

您目前拥有的是订阅回发活动。也就是说,应该处理服务器端代码中索引更改的函数。但是你的功能实际上是一个javascript,并在客户端执行。要调用它,您需要为下拉控件分配一个不同的属性:

onchange="selectedFAQ();"

删除OnSelectedIndexChanged的处理,无论如何都无法定义服务器端处理程序而无法访问代码。