3

我遵循了一个示例,该示例从 TextBoxFor 助手中调用了一些 javascript 代码,如下所示:

<%=Html.TextBoxFor(c => Model.Birthdate, new { @class = "datepicker", maxlength = 10, @onblur = "chkBirthday" })%>

我的 javascript 在 asp:Content 标头中如下所示:

<script type="text/javascript">
$(document).on("blur", "select[name=MainContent_Birthdate]",
    function chkBirthday() {

        document.getElementById("MainContent_ErrorMessage").visibility = 'visible';
        document.getElementById("MainContent_ErrorMessage").innerHTML = 'Testing';

    });

当我从我的助手中取出时,我尝试了几种选择来取回一些东西,包括在我的函数中只使用一个警报(“测试”),删除 $(document) 行,给元素全名(MainContent 前缀)但什么都没有作品。

我将 Chrome 与他们的开发工具一起使用,可以看到帮助程序生成的元素名称是正确的。我不知道怎么了。

有人可以帮忙吗?

4

2 回答 2

3

您的选择器无效。你应该使用input[name=MainContent_Birthdate].

于 2013-09-04T20:40:31.760 回答
0

元素不是TextBox吗?您正在为下拉列表使用选择器(选择)。尝试这个:

$(document).on("blur", "input[name=MainContent_Birthdate]"
                         ^^^

看看这是否有效。

http://jsfiddle.net/hescano/pwWaD/

于 2013-09-04T20:38:54.760 回答