C# 从javascript调用csharp方法
我正在使用javascript创建一个验证来验证介于1到100之间的页面大小。。 如果errorCtr=0,则在codebenhind中调用GotoPage()。。先谢谢你C# 从javascript调用csharp方法,c#,javascript,asp.net,C#,Javascript,Asp.net,我正在使用javascript创建一个验证来验证介于1到100之间的页面大小。。 如果errorCtr=0,则在codebenhind中调用GotoPage()。。先谢谢你 <script type="text/javascript" language="javascript"> function validatePageSize() { var pageSize = document.getElementById('MainContent_txtPageSi
<script type="text/javascript" language="javascript">
function validatePageSize() {
var pageSize = document.getElementById('MainContent_txtPageSize').value;
var errorCtr = 0;
if (pageSize == "") {
alert('Records per page should be a valid number');
errorCtr++;
}
if (pageSize < 0 || pageSize > 100) {
alert('Records per page should be between 1 to 100');
errorCtr++;
}
if (errorCtr == 0) {
//missing code
}
}
</script>
您不能仅通过javascript调用来实现这一点,如果您希望在服务器上运行代码,则需要回发。Javascript代码在客户机上运行(换句话说,在浏览器中)。您的C#代码get在服务器上运行。您应该在客户端javascript代码中复制C#方法所做的操作。您不能仅通过javascript调用来完成这一点,如果您希望在服务器上运行代码,则需要回发。Javascript代码在客户机上运行(换句话说,在浏览器中)。您的C#代码get在服务器上运行。您应该在客户端javascript代码中复制C#方法所做的工作。您可以在javascript中调用服务器端函数。但是,如果您试图在该函数中操纵soem服务器端控制,则可能无法实现。但是,如果您试图进行一些计算并从函数中获取返回值,那么您肯定可以实现这一点 示例代码 Java脚本
function callServer() {
alert('<%=LoadInvoiceForJob() %>');
}
您可以在javascript中调用服务器端函数。但是,如果您试图在该函数中操纵soem服务器端控制,则可能无法实现。但是,如果您试图进行一些计算并从函数中获取返回值,那么您肯定可以实现这一点 示例代码 Java脚本
function callServer() {
alert('<%=LoadInvoiceForJob() %>');
}
这样试试看
WebForm2.aspx页面:-
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" runat="server" />
<script type="text/javascript">
function validatePageSize() {
var pageSize = document.getElementById('MainContent_txtPageSize').value;
var errorCtr = 0;
if (pageSize == "") {
alert('Records per page should be a valid number');
errorCtr++;
}
if (pageSize < 0 || pageSize > 100) {
alert('Records per page should be between 1 to 100');
errorCtr++;
}
if (errorCtr == 0) {
PageMethods.Goto();
}
}
</script>
<div>
<asp:TextBox ID="MainContent_txtPageSize" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="validatePageSize();" />
</div>
</form>
这样试试看
WebForm2.aspx页面:-
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" runat="server" />
<script type="text/javascript">
function validatePageSize() {
var pageSize = document.getElementById('MainContent_txtPageSize').value;
var errorCtr = 0;
if (pageSize == "") {
alert('Records per page should be a valid number');
errorCtr++;
}
if (pageSize < 0 || pageSize > 100) {
alert('Records per page should be between 1 to 100');
errorCtr++;
}
if (errorCtr == 0) {
PageMethods.Goto();
}
}
</script>
<div>
<asp:TextBox ID="MainContent_txtPageSize" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="validatePageSize();" />
</div>
</form>
您可以使用webMethode&&scriptmethode。 在“代码隐藏”中的以下代码上,我搜索用户名可用性,并在aspx文件上,我从该方法获得结果:
1) 代码隐藏(c#代码): 2) aspx(网页):
函数ShowAvailability(){
window.PageMethods.CheckUserName(document.getElementById(“”.value,OnSuccess);
}
函数OnSuccess(响应){
var mesg=document.getElementById(“”);
mesg.innerHTML=“”;
开关(响应){
案例“真”:
mesg.style.color=“绿色”;
mesg.innerHTML=“ناکا㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶬”;
打破
案例“假”:
mesg.style.color=“#ec6730”;
mesg.innerHTML=“ناکاا㶍㶍㶍㶍㶫ت”;
打破
案例“错误”:
mesg.style.color=“#ec6730”;
mesg.innerHTML=“ن;
打破
}
}
函数睡眠(毫秒){
var startTime=new Date().getTime();//获取当前时间
while(new Date().getTime()
并且,您应该在runnat server attr的表单中使用具有以下结构的脚本管理器:
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="True" EnablePartialRendering="true"></asp:ScriptManager>
您可以使用webMethode和脚本methode。 在“代码隐藏”中的以下代码上,我搜索用户名可用性,并在aspx文件上,我从该方法获得结果:
1) 代码隐藏(c#代码): 2) aspx(网页):
函数ShowAvailability(){
window.PageMethods.CheckUserName(document.getElementById(“”.value,OnSuccess);
}
函数OnSuccess(响应){
var mesg=document.getElementById(“”);
mesg.innerHTML=“”;
开关(响应){
案例“真”:
mesg.style.color=“绿色”;
mesg.innerHTML=“ناکا㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶈㶬”;
打破
案例“假”:
mesg.style.color=“#ec6730”;
mesg.innerHTML=“ناکاا㶍㶍㶍㶍㶫ت”;
打破
案例“错误”:
mesg.style.color=“#ec6730”;
mesg.innerHTML=“ن;
打破
}
}
函数睡眠(毫秒){
var startTime=new Date().getTime();//获取当前时间
while(new Date().getTime()
并且,您应该在runnat server attr的表单中使用具有以下结构的脚本管理器:
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="True" EnablePartialRendering="true"></asp:ScriptManager>
“谢谢你的回答比尔。”DekIAT,如果比尔的回答帮助你,考虑把它标记为接受。谢谢你的回答比尔。“DekIAT,如果比尔的回答帮助你,考虑把它标记为接受。
<script type="text/javascript">
function ShowAvailability() {
window.PageMethods.CheckUserName(document.getElementById("<%=txtUserName.ClientID%>").value, OnSuccess);
}
function OnSuccess(response) {
var mesg = document.getElementById("<%=lblUsername.ClientID%>");
mesg.innerHTML = "";
switch (response) {
case "true":
mesg.style.color = "green";
mesg.innerHTML = "نام کاربری قابل استفاده می باشد";
break;
case "false":
mesg.style.color = "#ec6730";
mesg.innerHTML = "نام کاربری استفاده شده است ";
break;
case "error":
mesg.style.color = "#ec6730";
mesg.innerHTML = "نام کاربری صحیح نمی باشد";
break;
}
}
function sleep(milliSeconds) {
var startTime = new Date().getTime(); // get the current time
while (new Date().getTime() < startTime + milliSeconds); // hog cpu
}
function OnChange(txt) {
//sleep(100);
document.getElementById("mesg").innerHTML = "";
}
</script>
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="True" EnablePartialRendering="true"></asp:ScriptManager>