Было высказано предположение, что я пытаюсь объяснить свою проблему без кода, поэтому здесь он идет. У меня есть веб-страница, в которой перечислены связки с именами проектов, как показано в этом jsfiddle. То, что я хочу сделать дальше, - это отобразить вторую веб-страницу после щелчка по ссылке проекта пользователем. На второй веб-странице нужно будет сделать второй запрос ajax, например, в этом Second page jsfiddle, чтобы получить новую информацию, чтобы отобразить резюме проекта, цитаты и имена для этого конкретного проекта. Часть, которая меня убивает, - это запрос ajax для второй страницы, в настоящее время имеет номер 504216b6e4b04b508bfd333b в URL-адресе, что означает, что он будет использовать этот проект только для второй страницы, чтобы отображать резюме, цитаты и имена. Мне нужен этот ajax-запрос, чтобы взять переменную для любого номера идентификатора. Однако, чтобы усугубить проблему, идентификационный номер поступает от пользователя, щелкнувшего ссылку на первой странице. Поэтому моя проблема заключается в получении значения идентификатора после щелчка ссылки и помещения его в запрос ajax для следующей страницы. У меня есть все, что сделано для отображения страниц, но я не могу получить значение из одного файла в следующий. Любая помощь приветствуется, спасибо.Использование значения, полученного из обработчика щелчка, который находится внутри запроса ajax вне функции
не позволил бы мне сохранить без выкладывания коды, так что это только голые кости,
// The ajax request is in another file but it works good
promise.done(function (json) {
// Make some links
// Which link was clicked? I need to see some id please
$('#sbItems a').on('click', function (e) {
e.preventDefault();
// Do stuff to find the id for the link the user clicked
// Assign the id to a variable that I can use in the next ajax request
// that is called in a seperate file
testId = json.items[itemId].id;
}); // END Click event
}).fail(function() {
alert("Ajax call failed!");
});
second file has,
// Need to somehow, someway get the testId variable that holds the id
// into this file
var url = 'https://www.sciencebase.gov/catalog/item/ + THE TESTID + ?format=
jsonp&fields=relationships,title,body,contacts';
$.ajax({
type: 'GET',
url: url,
jsonpCallback: 'getSBJSON',
contentType: "application/json",
dataType: 'jsonp',
complete: onComplete,
success: function(json) {
// Display some stuff based off this url
}
});
это отличная идея, но я все еще немного смущен. Поэтому, когда я запрашиваю вторую страницу, я просто использую html-файл для отображения второй страницы как window.open ('Citations.html', '_self'); – jc72
Когда щелкнули ссылку, я хочу открыть файл citations.html, в котором будет новый запрос ajax с новым идентификатором. – jc72
@ jc72 - Затем используйте 'window.open ('Citations.html? Id = 504216b6e4b04b508bfd333b', '_self');' и проанализируйте значение id из своего собственного URL-адреса window.location.href на javascript второй страницы , – jfriend00