JavaScript不使用RadTextBox 函数validatePhoneNumber(){ var phone=document.getElementById('txtPhone1'); var mobile=document.getElementById('txtPhone2'); 警报(电话值); 如果((phone.value==null | | phone.value==“”)和&(mobile.value==null | | mobile.value==“”){ 警惕(“某物”); 返回false; } 否则{ 警惕(“某物”); 返回true; } } 电话:

JavaScript不使用RadTextBox 函数validatePhoneNumber(){ var phone=document.getElementById('txtPhone1'); var mobile=document.getElementById('txtPhone2'); 警报(电话值); 如果((phone.value==null | | phone.value==“”)和&(mobile.value==null | | mobile.value==“”){ 警惕(“某物”); 返回false; } 否则{ 警惕(“某物”); 返回true; } } 电话:,javascript,telerik,asp.net-ajax,rad-controls,Javascript,Telerik,Asp.net Ajax,Rad Controls,当我向RadButton添加“OnClientClicked”以调用javaScript中的javaScript(“returnvalidatePhonenumbers”)时,它显示NULL为什么? 有两个rad文本框txtphone1和txtphone2, 事实上,我想验证这些文本框,如果有任何一个是填补没有问题,否则我需要显示一个错误/警告消息。 请帮帮我 实际上,.value在javascript中没有显示(document.GetelementById.value) OnClientCl

当我向RadButton添加“OnClientClicked”以调用javaScript中的javaScript(“returnvalidatePhonenumbers”)时,它显示NULL为什么? 有两个rad文本框txtphone1和txtphone2, 事实上,我想验证这些文本框,如果有任何一个是填补没有问题,否则我需要显示一个错误/警告消息。 请帮帮我

实际上,.value在javascript中没有显示(document.GetelementById.value)


OnClientClicked事件将按名称运行一个带有2个参数的函数,这些参数类似于.NET事件处理程序(sender和eventArgs)使用的参数。Telerik控件不会以与常规HTML对象相同的方式取消操作,因为
返回false不会取消回发。相反,Telerik API在eventArgs参数中提供了一个set_cancel()函数

 <telerik:RadButton ID="btnUpdate" runat="server" Text='<%# (Container is GridEditFormInsertItem) ? "Insert" : "Update" %>'
                                    CommandName='<%# (Container is GridEditFormInsertItem) ? "PerformInsert" : "Update" %>'
                                    Skin="Windows7" ValidationGroup="Submit">
函数validatePhoneNumber(发送方、事件参数){
var phone=document.getElementById(“”);//根据我的注释更正
var mobile=document.getElementById(“”);//根据我的注释更正
警报(电话值);
如果((phone.value==null | | phone.value==“”)和&(mobile.value==null | | mobile.value==“”){
警惕(“某物”);
eventArgs.set\u cancel(true);
}
否则{
警惕(“某物”);
}
}
您不需要设置
OnClientClicked=“return ValidatePhoneNumbers”
,相反,我将使用
OnClientClicking=“ValidatePhoneNumbers”
重新编译(请参阅:)

有关客户端事件处理程序的更多信息,请参阅:


当按下按钮时,验证器应该触发,如果未设置“代码>因果关系”=“true”<代码>,并且可以考虑一个RealdFieldValueAtter,以确保它在回发之前被填充。

点击>事件将按2个参数的名称运行一个函数,这类似于.NET事件处理程序所使用的函数。(发送方和eventArgs)。Telerik控件不会以与常规HTML对象相同的方式取消操作,因为
返回false;
不会取消回发。相反,Telerik API在eventArgs参数中提供了set_cancel()函数

 <telerik:RadButton ID="btnUpdate" runat="server" Text='<%# (Container is GridEditFormInsertItem) ? "Insert" : "Update" %>'
                                    CommandName='<%# (Container is GridEditFormInsertItem) ? "PerformInsert" : "Update" %>'
                                    Skin="Windows7" ValidationGroup="Submit">
函数validatePhoneNumber(发送方、事件参数){
var phone=document.getElementById(“”);//根据我的注释更正
var mobile=document.getElementById(“”);//根据我的注释更正
警报(电话值);
如果((phone.value==null | | phone.value==“”)和&(mobile.value==null | | mobile.value==“”){
警惕(“某物”);
eventArgs.set\u cancel(true);
}
否则{
警惕(“某物”);
}
}
您不需要设置
OnClientClicked=“return ValidatePhoneNumbers”
,相反,我将使用
OnClientClicking=“ValidatePhoneNumbers”
重新编译(请参阅:)

有关客户端事件处理程序的更多信息,请参阅:


如果未设置按钮,则按下按钮时应触发验证程序
CausesValidation=“True”和可能考虑RealdFieldValueAtter以确保它在回发之前被填充。

< P>当您使用TeleRik控件时,JavaScript查找控件和执行操作与使用普通HTML和JavaScript:

不同。 要查找radcombox:

function ValidatePhoneNumbers(sender, eventArgs) {
    var phone = document.getElementById('<%= txtPhone1.ClientId %>'); // Corrected as per my comment
    var mobile =document.getElementById('<%= txtPhone2.ClientId %>'); // Corrected as per my comment
    alert(phone.value);
    if ((phone.value == null || phone.value == "") && (mobile.value == null || mobile.value == "")) {
        alert('something');
        eventArgs.set_cancel(true);
    }
    else {
        alert('something');
    }
}
$find(“”;//例如
让我们来解决你的问题:

$find("<%=RadComboBox1.ClientID %>");//for example
var phone=$find(“”);
var mobile=$find(“”);
警报(phone.get_value());//使用get_value()获取radcombobox的值
if((phone.get_value()==null | | | phone.get_value()==“”)和&(mobile.get_value()==null | | mobile.get_value()==“”){
警惕(“某物”);
eventArgs.set\u cancel(true);
}
否则{
警惕(“某物”);
}
}

当您使用telerik控件时,查找控件和执行操作的javascript与我们使用普通html和javascript时不同:

要查找radcombox:

function ValidatePhoneNumbers(sender, eventArgs) {
    var phone = document.getElementById('<%= txtPhone1.ClientId %>'); // Corrected as per my comment
    var mobile =document.getElementById('<%= txtPhone2.ClientId %>'); // Corrected as per my comment
    alert(phone.value);
    if ((phone.value == null || phone.value == "") && (mobile.value == null || mobile.value == "")) {
        alert('something');
        eventArgs.set_cancel(true);
    }
    else {
        alert('something');
    }
}
$find(“”;//例如
让我们来解决你的问题:

$find("<%=RadComboBox1.ClientID %>");//for example
var phone=$find(“”);
var mobile=$find(“”);
警报(phone.get_value());//使用get_value()获取radcombobox的值
if((phone.get_value()==null | | | phone.get_value()==“”)和&(mobile.get_value()==null | | mobile.get_value()==“”){
警惕(“某物”);
eventArgs.set\u cancel(true);
}
否则{
警惕(“某物”);
}
}

Try with ClientID如下:document.getElementById(“”).value但显示错误的是txtPhone1不在当前上下文中Try with ClientID如下:document.getElementById(“”).value但是它显示的错误是txtPhone1不在当前上下文中。我还应该添加document.getElementById不能正常工作,因为元素将有一个不同的ID给它以确保“唯一性”。用txtPhone1.ClientID(取自后面的代码)补充“txtPhone1”/“txtPhone2”,然后