こんにちは私はデータベースからデータを選択し、これらのデータをコントローラから渡してajax経由で表示したいが動作していません。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;
}
}
値が正しく設定されているかどうかを確認します。アラート(人物)とアラート(person.email_uzivatele)を保持して、値が正しく来ているかどうかを確認してください。バインドだけが問題です。 –
アラートを追加しました。本当に何が間違っているのですか? –
あなたの 'SelectByEmail'関数がリストを返すならば、あなたのajaxの成功はインデックスを使って値' $( '#email')を得なければなりません。val(person [0] .email_uzivatele); ' – JamieD77