Javascript 在更改时删除服务器端验证格式更改

Javascript 在更改时删除服务器端验证格式更改,javascript,asp.net,Javascript,Asp.net,我有一个函数,用于验证输入服务器端,将焦点设置为缺少的项,并使项边框变为红色。这一切都是有效的,我正在努力处理如何删除红色边框一旦选定的索引已更改或文本框有一个值?处理这个问题的最佳方法是什么?Javascript?我尝试了下面的javascript,但由于字段和下拉列表位于usercontrols中,我不确定这是否正确。我尝试将javascript放在服务器控件ascx页面和提交按钮所在的aspx页面中 Javascript: $(document).ready(function () {

我有一个函数,用于验证输入服务器端,将焦点设置为缺少的项,并使项边框变为红色。这一切都是有效的,我正在努力处理如何删除红色边框一旦选定的索引已更改或文本框有一个值?处理这个问题的最佳方法是什么?Javascript?我尝试了下面的javascript,但由于字段和下拉列表位于usercontrols中,我不确定这是否正确。我尝试将javascript放在服务器控件ascx页面和提交按钮所在的aspx页面中

Javascript:

 $(document).ready(function () {
            var companyRelation = document.getElementById('<%=ddlCompanyRelationship.ClientID %>');
            $('#ddlCompanyRelationship').change(function () {
                if (companyRelation.options.value != "-1") {
                    companyRelation.style.border = "#bebebe";
                }
            });
        })
$(文档).ready(函数(){
var companyRelation=document.getElementById(“”);
$('#ddlCompanyRelationship')。更改(函数(){
if(companyRelation.options.value!=“-1”){
companyRelation.style.border=“#bebe”;
}
});
})

您需要查看页面源代码,并根据这些方法添加javascript。如果有ID,则应触发javascript on change函数

Javascript是客户端,所以不需要将其粘贴到服务器控制页面中。 如果你给我们一个网址,那就很容易了

此document.getElementbyID和服务器端ID呈现可能没有帮助,除非您告诉我们它是否实际为您提供了从服务器到客户端的ID

可以粘贴在页面的“查看源代码”模式下获得的脚本吗


尝试使用jQuery选择该元素并更改其CSS以在更改时显示另一种颜色,然后使用console.log查看事件是否实际触发。

您的脚本似乎工作正常。问题是在哪里控制JavaScript或在页面中,然后控制它,因为您将在多个页面上使用控制,这是控制的主要目的,所以在每个页面上使用脚本时,最好的做法是控制它

现在对于边界问题,我有一个简单的方法。 制作一个css类

.MakeBorderRed{ border-color: #ff0000 }
然后替换以下代码

if (companyRelation.options.value != "-1") 
{
    $('#ddlCompanyRelationship').addClass("MakeBorderRed");
}
else
{
    $('#ddlCompanyRelationship').removeClass("MakeBorderRed");
}

我遇到的问题是usercontrol中的标记不在aspx页面的作用域内,无法调用javascript验证?