Я довольно новичок в этом, так что несите меня.Как я могу ударить свою базу данных с помощью вызова AJAX с помощью javascript?
Я использую ASP.NET MVC.
Я создал наложение для покрытия страницы, когда кто-то нажимает кнопку, соответствующую определенной записи в базе данных. Из-за этого ВСЕ мой код для этой функции находится в файле .js, содержащемся в моем проекте.
Что мне нужно сделать, это потянуть информацию, соответствующую моей записи из самой базы данных, с помощью вызова AJAX и поместить ее в мои текстовые поля. Затем, после того, как конечный пользователь внес нужные изменения, мне нужно обновить значения этой записи, чтобы они соответствовали входу. Некоторое время я занимался серфингом в Интернете и не смог найти пример, который бы соответствовал моим потребностям эффективно.
Вот мой код в моем файле JavaScript до сих пор:
function editOverlay(picId) {
//pull up an overlay
$('body').append('<div class="overlay" />');
var $overlayClass = $('.overlay');
$overlayClass.append('<div class="dataModal" />');
var $data = $('.dataModal');
overlaySetup($overlayClass, $data);
//set up form
$data.append('<h1>Edit Picture</h1><br /><br />');
$data.append('Picture name: ');
$data.append('<input class="picName" /> <br /><br /><br />');
$data.append('Relative url: ');
$data.append('<input class="picRelURL" /> <br /><br /><br />');
$data.append('Description: ');
$data.append('<textarea class="picDescription" /> <br /><br /><br />');
var $nameBox = $('.picName');
var $urlBox = $('.picRelURL');
var $descBox = $('.picDescription');
var pic = null;
//this is where I need to pull the actual object from the db
//var imgList =
for (var temp in imgList) {
if (temp.Id == picId) {
pic= temp;
}
}
/*
$nameBox.attr('value', pic.Name);
$urlBox.attr('value', pic.RelativeURL);
$descBox.attr('value', pic.Description);
*/
//close buttons
$data.append('<input type="button" value="Save Changes" class="saveButton" />');
$data.append('<input type="button" value="Cancel" class="cancelButton" />');
$('.saveButton').click(function() {
/*
pic.Name = $nameBox.attr('value');
pic.RelativeURL = $urlBox.attr('value');
pic.Description = $descBox.attr('value');
*/
//make a call to my Save() method in my repository
CloseOverlay();
});
$('.cancelButton').click(function() {
CloseOverlay();
});
}
Вещей я закомментирована, что мне нужно сделать, и/или не доступен, пока предыдущие вопросы не будут решены.
Все советы приветствуются! Помните, я ОЧЕНЬ новичок в этом материале (точнее, две недели), и, вероятно, вам понадобятся очень четкие инструкции.
BTW: overlaySetup() и CloseOverlay() - это функции, в которых я живу где-то еще.
Спасибо!
Я должен сделать это в качестве учебного упражнения. Он ДОЛЖЕН быть выполнен с помощью javascript. Кроме того, у меня есть репо/контроллер. Я просто не знаю, как его использовать. Как я уже сказал, я очень люблю этот материал. Но спасибо, хотя! – Charmander
@tmedge: если вам нужно сделать это из javascript, лучше всего пропустить ASP.NET MVC для этой части и использовать веб-службу REST-ful, которую ваши javascript вызовет для извлечения и обновления своих данных. – Randolpho
@ Randolpho: так ты говоришь, что я делаю это наихудшим способом? неудивительно, что я не могу найти пример в сети ... Извините, чувак, но мне действительно нужно сделать это в моем приложении MVC. – Charmander