js函数没有运行

时间:2013-09-05 09:29:13

标签: javascript asp.net vb.net vb.net-2010

我的js功能完全正常工作(没有母版页)我只需要在其他页面上使用它,所以我将它复制粘贴到一个新的网页表单但是这次使用母版页,现在它根本没有运行..这就是我的代码:

<%@ Page Title="" Language="vb" AutoEventWireup="false"  
MasterPageFile="~/MasterPage.Master" CodeBehind="homecarecontent.aspx.vb"  
 Inherits="homecare_web2.homecarecontent" %>
 <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<head>
<title></title>
<link href="StyleSheet1.css" rel="stylesheet" type="text/css" />
<style type="text/css">
    #TextArea1
    {
        height: 152px;
        width: 222px;
    }
    #conte
    {
        height: 136px;
        width: 229px;
    }
    #content_txt
    {            height: 178px;
        width: 226px;
    }
    #content_t
    {
        height: 159px;
        width: 225px;
    }
</style>
<script type="text/javascript">
    function limiter() {
        var area = document.getElementById("content_txt");
        var message = document.getElementById("message");
        var maxLength = 160;
        var checkLength = function () {
            if (area.value.length <= maxLength) {
                message.innerHTML = (maxLength - area.value.length) + " characters remainging";
            }
        }
        setInterval(checkLength, 300);
    }
  </script>

 </head>

那是我的asp代码:

<td valign='top'>
                <textarea style="resize:none; margin-bottom:0px;" id="content_txt" class="area"
                    name="TextArea1" runat="server" maxlength="160" onkeyup="return limiter();" ></textarea>
            </td>

任何帮助PLZ!

3 个答案:

答案 0 :(得分:0)

如果将textarea的runat属性更改为

,该怎么办?
runat="client"

答案 1 :(得分:0)

使用Control.ClientID Property财产。

var area = document.getElementById('<%=content_txt.ClientID%>');
var message = document.getElementById('<%=message.ClientID%>');

如果您仍然遇到问题,请参阅FireBugFireFox的控制台标签。你会在那里找到错误的描述。

答案 2 :(得分:0)

当我们使用母版页时控件的ID会发生变化,这就是为什么它无法在页面上找到元素而不能正常工作并产生错误所以我应该这样做:

var area = document.getElementById('<%=content_txt.ClientID%>');