当我在文本框中键入6Th数字时,如何从代码中触发事件/函数?
我的用法非常简单 我是C#的程序员 当我在文本框中键入第6个数字时,如何从后面的代码中触发事件/函数?
答案 0 :(得分:1)
根据问题中的评论阅读您的要求后,我建议您使用Web Service或Page方法解决当前问题。
您的问题可以通过以下方式解决:
示例代码如下:
用于计算长度的Javascript函数:
function caculateTextboxLenth() {
if (document.getElementById("<Textbox Id>").length == 6) {
var text = document.getElementById("<Textbox Id>").text;
CallWebService("/getDistrictData",text);
}
return false;
}
用于调用网页方法的Javascript函数:
function CallWebService(WebServiceURL,text) {
$.ajax({
type: "POST",
cache: false,
url: WebServiceURL + "&pincode=" text + "&dt=" + new Date().getTime(), //This will append ?dt={timestamp} to the URL to prevent caching,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: ShowData,
error: error
});
}
您的C#页面方法应与您的代码隐藏文件中的内容类似。
[System.Web.Services.WebMethod]
public static string getDistrict()
{
int pincode = Convert.ToInt32(HttpContext.Current.Request.QueryString["pincode"].ToString().Trim());
string district = "";
//code to fetch district
return district;
}
P.S:检查SQL注入。
答案 1 :(得分:0)
将两个事件附加到文本框 1)Javascript onchange 2)c#OnTextChanged
检查onchange中字符的验证,如果为true,则返回“true true;” 这将在服务器端触发OnTextChanged事件。
另外不要忘记将textbox的“AutoPostBack”属性设置为true。
答案 2 :(得分:0)
我的解决方案可能不完美,但是将texbox
放入UpdatePanel
双击它以创建一个事件,现在使用int.Parse
查看输入的输入是否为整数并使用txtbx.Text.Length
看看你是否得到了第六位数字。
它应该是这样的
if(txtbx.Text.Trim().Length > 0 && int.Parse(txtbx.Text.Trim(), out intoutput))
{
if(txtbx.Text.Trim().Length = 6 )
{
// your code here
}
}