#c# #html #asp.net
#c# #HTML #asp.net
Вопрос:
Я использую ASP.NET чтобы создать веб-сайт для отеля и на данный момент показывать гостиничные номера, я создал файл javacript для генерации div, теперь я хочу получить значение номера комнаты, которое, нажав «подробнее», перенесет значение номера комнаты вдругая страница
Я уже пытался использовать файлы cookie, но это не работает
вот файл js, который генерирует div:
$(document).ready(function () {
$.get('http://localhost/quartos.php', function (data) {
var results = JSON.parse(data);
console.log(results);
for (i = 0; i < results.length; i ) {
var div = "<div class='col-sm col-md-6' height='600px' width='400px'><div class='room'><a href='' class='img d-flex justify-content-center align-items-center' style='background-image: url(images/Quartos/" results[i].imagem ");'></a><div class='text p-3 text-center><h3 class=' mb-3'><a href=''>Quarto " results[i].descricao "</a></h3 > <p><span class='price mr-20'>" results[i].Preco_quarto "u20AC</span><asp:Label ID='Label1' runat='server' Text='ç aop'></asp:Label><span class='per'> por noite</span></p> <ul class='list'><li><span>Max:</span>" results[i].Lotacao_Maxima " Pessoas</li><li><span>Vista:</span>" results[i].Vista "</li></ul><hr><p class='pt-1'><button class='btn btn-primary' runat='server' onserverclick='btn_quartos'>Ver Detalhes<span class='icon-long-arrow-right'></button></span></p></div></div></div>";
document.cookie = "CookieName=" results[i].Num_Quarto ";";
$("#quartos").append(div);
}
});
});
и cs «следующей» страницы:
protected void Page_Load(object sender, EventArgs e)
{
string num_quarto = Request.Cookies["CookieName"].Value.ToString();
}
Комментарии:
1. Является
php
ли тег релевантным? Либо укажите, как это относится к вашему вопросу, либо удалите его.2. да, это потому, что данные js основаны на файле php, они находятся во второй строке localhost/quartos.php
3. В любом случае, пожалуйста, опишите, что не так с вашим текущим решением.
4. файл cookie, который я использовал, просто возвращает последнее значение запроса, и я хочу получить то, которое я выбираю
5. Вы используете PHP и ASP.NET на том же сайте IIS?
Ответ №1:
Вы каждый раз перезаписываете файл cookie на что-то новое в цикле for, поэтому файл cookie всегда будет содержать последний результат results
, несмотря на то, что они выбирают.
Хотя использование файла cookie для передачи информации с одной страницы на другую в любом случае не является идеальным способом делать то, что вы хотите.
Лучшим способом было бы сделать так, чтобы ваша страница «подробнее» могла принимать номер комнаты в качестве строкового значения запроса.
Пример: http://localhost/learnmore.php?cuarto=123
Затем он просматривает информацию о комнате и отображает эту информацию в формате html.
При этом вы можете упростить ссылку в вашем элементе div, чтобы указывать на learmore.php?cuarto=" results[i].Num_Quarto
нее, и не нужно перепрофилировать функциональность cookie для поведения, для которого она на самом деле не предназначена.
Комментарии:
1. Да, это работает, я обычно использую сеанс для передачи значений между страницами, но в этом случае я думаю, что это вариант unic, ty