我想回发到服务器以运行查找功能。因此,当用户将他们的电子邮件地址键入文本框并“点击”时,我想调用我的C#函数:
UserInfoObject LookupUserInfo(string Email)
{
//...
}
我的jQuery能力不是很好。所以,我可以使用一些帮助来设置基本结构。 API势不可挡。我需要ajax吗?自定义AJAX对我的技能水平来说似乎有点太高级了。
在我过于简单化的观点中:
$('#textBox').OnChange(function {
//call some C#
//Use object info to populate textbox2 and textbox3
}
)};
答案 0 :(得分:2)
您可以创建一个ASP.NET页面方法并通过jQuery调用它。
Encosia上有一个很棒的指南,可以告诉你如何。
然后,您可以将blur
处理程序附加到文本框中,如下所示:
$('#yourEmailTextBox').live('blur', function(){
// ajax call to get data and fill form here
});
答案 1 :(得分:1)
基本骨架:
<input id="emailAddress" ... />
$(function () // when the DOM is ready
{
var $email = $('#emailAddress'); // grab a reference to the input
$email.blur(function () // when the input loses focus, do the following:
{
var email = $(this).val(); // grab the value in the input
$.get('some/url/here', // use ajax to send an HTTP GET
{email: email}, // with the email value in the URL parameters
function (data) // and process the data accordingly
{ // when the response comes back
/*
* do something to populate the textboxes here
*/
});
});
});
答案 2 :(得分:1)
是的,你确实需要ajax,而且开始时并不难。你只需要连接该输入的模糊功能,并向服务器发送ajax调用。你可以这样做
$("#InputBoxID").live("blur", function(){
$.ajax({
url:"http://www.someone.com",
type:"post"
data:{email:$(this).val()},
dataType:"json",
success:function(data)
{
// you can send data in json format from server and here you can use it like
alert(data.FirstName);
alert(data.LastName);
}
});
});
答案 3 :(得分:0)
尝试使用jquery .get或.post。这比.ajax
更容易这是一个简写的Ajax函数,相当于:
$.get('ajax/test.html', function(data) {
$('.result').html(data);
alert('Load was performed.');
});
答案 4 :(得分:0)
$('#textbox').live('blur', function() {
var url = '/controller/LookupUserInfo/?Email=' + $(this).val();
$.get(url, function(data) {
$('#textBox2').val(data);
});
});
您可以使用Url.Action或任何其他帮助方法来获取格式正确的网址。通过更精简的语法,Get实际上是对ajax的简短调用。