C# AutoPostBack上的触发器jQuery代码=true?

C# AutoPostBack上的触发器jQuery代码=true?,c#,jquery,asp.net,autopostback,C#,Jquery,Asp.net,Autopostback,我有一段jQuery代码,它将电话号码掩码应用于表单中的文本字段: <script type="text/javascript" src="../../../js/jquery.maskedinput.min.js"></script> <script type="text/javascript"> $(document).ready(function () { $.mask.definitions['~'] = '[+-]';

我有一段jQuery代码,它将电话号码掩码应用于表单中的文本字段:

<script type="text/javascript" src="../../../js/jquery.maskedinput.min.js"></script>

<script type="text/javascript">
    $(document).ready(function () {
        $.mask.definitions['~'] = '[+-]';
        $('.phone').mask('(999) 999-9999');
    });
</script>

我可能错了,因为我已经很久没有使用ASP.NET了,但我相信您可以简单地更改
$(document.ready(function(){…})
$(窗口).load(函数(){…})

否则,ASP.NET会在每次加载页面时执行名为
pageLoad
的函数:

function pageLoad() {
    $.mask.definitions['~'] = '[+-]';
    $('.phone').mask('(999) 999-9999');
};

您是否已将表单包装在更新面板中?jqueryv1.8中不推荐使用
load
事件,我尝试了$(window).load(function(){});和函数pageLoad(),但不幸的是,这两个函数都没有解决问题。您的JavaScript是放在HTML末尾的关闭标记
之前,还是放在
中?它在文档的末尾。实际上,请注意--pageLoad()函数确实起作用。我忘了最后一个括号后的分号。谢谢!:)
    protected void Page_Load(object sender, EventArgs e)
    {
        // DETERMINE IF THE SHIPPING FORM MUST BE INITIALIZED
        bool initShipAddress;
        if (Page.IsPostBack)
        {
            // ON POSTBACK, WE ONLY INITIALIZE THE SHIPPING FORM IF THE ADDRESS SELECTION WAS CHANGED
            initShipAddress = (Request.Form["__EVENTTARGET"] == AddressBook.UniqueID);         
        }
        else
        {
            // ON FIRST VISIT, WE INITIALIZE SHIPPING FORM IF THE SHIPPING ADDRESS IS NOT THE BILLING
            initShipAddress = (GetShippingAddressId() != _User.PrimaryAddress.Id);
        }
        if (initShipAddress) InitializeShippingAddress();
    }
$(window).load(function () {
    $.mask.definitions['~'] = '[+-]';
    $('.phone').mask('(999) 999-9999');
});
function pageLoad() {
    $.mask.definitions['~'] = '[+-]';
    $('.phone').mask('(999) 999-9999');
};