#php #jquery #ajax #data-uri
#php #jquery #ajax #data-uri
Вопрос:
Я знаю из названия, что это, вероятно, очень запутанно, поэтому позвольте мне объяснить.
На этой странице у меня есть что-то вроде этого:
<div id="district_courses">
<?php foreach ($courses as $course) {
if ($course->group_type == 'D') { ?>
<div id="course_nav_<?php echo $course->id; ?>" class="menu-item course" data-url="<?php echo base_url('/admin/uploads/course/' . $course->id); ?>">
<div><?php if ($isDistrict == TRUE) {
echo $course->title . " <sapn style='font-size: 12px;'>(" . $course->pub_name . ")</span>";
} else {
echo $course->title;
} ?></div>
</div>
<?php }
} ?>
</div>
который работает нормально, и URL-адрес данных активен при нажатии на элемент. Однако теперь есть функция поиска, в которой я беру данные и помещаю их в пустой div на странице
<div id="searched_courses">
</div>
Вот вызов ajax, который получает данные поиска. Как вы видите, я перебираю результаты в javascript, затем помещаю код в div выше, но теперь кажется, что с этим кодом URL-адрес данных неактивен. Я не могу щелкнуть по элементу и запустить URL-адрес данных?
$("#search_courses").click(function() {
var searchquery = $('#course_search_input').val();
$.ajax({
type: "POST",
url: '/admin/uploads/course-search',
data: {
query: searchquery
},
success: function(response) {
var courses = response.courses;
var i;
var html = '';
for (i = 0; i < courses.length; i ) {
//console.log(courses[i]['id']);
html = '<div id="course_nav_' courses[i]['id'] '" class="menu-item course" data-url="/admin/uploads/course/' courses[i]['id'] '">
<div>' courses[i]['title'] ' <sapn style="font-size: 12px;">(' courses[i]['pub_name'] ')</span></div>
</div>';
}
$('#super_district_courses').hide();
$('#district_courses').hide();
$('#school_courses').hide();
$('#all_courses').hide();
document.getElementById("searched_courses").innerHTML = html;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("Error: " errorThrown);
}
});
});
Комментарии:
1. Тот, который работает, использует base_url, а другой — нет. Это может быть вашей проблемой.
2. Да, это была моя первая мысль, и я вставил ее туда. По-прежнему не работает.
3. Вы пробовали это так?
data-url="<?php echo base_url('/admin/uploads/course/'); ?>' courses[i]['id']
4. нет. Я попробую это сейчас. Но я попробовал просто жестко закодировать его следующим образом: data-url=»<?php echo base_url(‘/admin/uploads/course/93′); ?>’ »
5. не сработало, но интересная попытка