【发布时间】:2016-07-08 04:02:37
【问题描述】:
您好,我从数据库中选择数据,我希望这些数据从我的控制器传递到通过 ajax 查看,但它不起作用。
你能帮帮我吗?
这是我的控制器:
[HttpGet]
public ActionResult Foo(string email_uzivatele)
{
var person = AdvertServiceLayer.Instance.SelectByEmail(email_uzivatele);
return Json(person, JsonRequestBehavior.AllowGet);
}
在这里我想显示我从数据库中选择的电子邮件:
<input id="email" name="email_uzivatele" type="text" class="form-control input-md">
这是我的 ajax 函数:
$(function () {
function getPerson(email_uzivatele) {
$.ajax({
url: '@Url.Action("Foo", "Home")',
type: 'GET',
dataType: 'json',
cache: false,
data: { email_uzivatele: email_uzivatele },
success: function (person) {
$('#email').val(person.email_uzivatele);
}
});
}
});
这是从数据库中选择电子邮件的功能:
public List<Advert> SelectByEmail(string email_uzivatele)
{
string queryString = "SELECT distinct email_uzivatele from
Reklama
where email_uzivatele like '%" + @email_uzivatele + "%'";
// Create the Command and Parameter objects.
SqlCommand command = new SqlCommand(queryString, Connection);
command.Parameters.AddWithValue("@email_uzivatele", "");
// Open the connection in a try/catch block.
// Create and execute the DataReader, writing the result
// set to the console window.
try
{
SqlDataReader reader = command.ExecuteReader();
List<Advert> advert = new List<Advert>();
while (reader.Read())
{
Advert a = new Advert();
a.email_uzivatele = reader[0].ToString();
Console.WriteLine("email_uzivatele: " + " " + "
" + a.email_uzivatele);
advert.Add(a);
}
reader.Close();
return advert;
}
catch (Exception ex)
{
chyba.zapsat_do_souboru(ex.Message);
Console.OpenStandardOutput();
Console.WriteLine(ex);
//zalogovat chybu
return null;
}
}
【问题讨论】:
-
检查值是否正确。保持警报 alert(person) 和 alert(person.email_uzivatele) 并查看值是否正确出现并且只是绑定问题
-
我添加了警报,但没有发生任何事情。说真的,我做错了什么?
-
如果您的
SelectByEmail函数返回一个列表.. 那么您的ajax 成功应该使用索引来获取值$('#email').val(person[0].email_uzivatele); -
即使我在我的 ajax 中更改了你建议的内容,仍然无法正常工作
-
你仍然没有告诉我们到底是什么不工作..控制器操作是否被击中..人在返回之前是否有任何记录.. email_uzivatele 是否包含值?
标签: jquery asp.net ajax asp.net-mvc razor