У меня есть скрипт, который должен делать следующее. После того, как я вставил некоторые данные, он должен показать сообщение «Успешно вставлено». Это не работает, но я не знаю, почему я неопытен в Jquery. У меня есть 3 файла.
Файл сценария:
$(document).on("click", ".btnAddSubcat", function(e) {
event.preventDefault();
var subcatvalue = $('.subCat').val();
var subcatprocedure = $('.subProcedure').val();
var url = "../service/functions/postActions.php";
swal({
title: 'Add a new sub-category?',
text: "Are you sure to Add this sub-category?",
type: 'warning',
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: 'Yes, Add it!'
}).then(function () {
$.ajax({
type: 'POST',
url : url,
data: {'subCat': subcatvalue, 'Procedure': subcatprocedure},
success: function (data) {
swal({
title: 'Add!',
text: "You Add a sub-category!",
type: 'success',
confirmButtonColor: '#3085d6',
confirmButtonText: 'OK'
}).then(function () {
window.location.reload();
})
}
});
})
});
PHP-файл
<div class = "form-group">
<label for = "inputsubcat" class = "col-sm-2 control-label">SubCategory:</label>
<div class = "col-sm-10">
<input type = "text" class = "form-control subCat" name = "subCat" placeholder = "...">
</div>
</div>
<div class = "form-group">
<label for = "inputprocedure" class = "col-sm-2 control-label">Procedure:</label>
<div class = "col-sm-10">
<textarea name = "Procedure" rows = "8" cols = "30" style = " resize: none;" class = "form-control subProcedure" placeholder = "..."></textarea>
</div>
</div>
<div class = "form-group">
<label class = "col-sm-2 control-label">Video:</label>
<div class = "col-md-10">
<input type = "file" name = "HWVideo" id = "HW-Video" class = "form-control uploadVideo" required = "true" accept = "video/mp4">
<video width = "450" controls>
<source src = "mov_bbb.mp4" id = "videoLink">
Your browser does not support HTML5 video.
</video>
</div>
</div>
<div class='form-group'>
<div class='col-sm-offset-2 col-sm-10'>
<input type='hidden' name='Subcatadd' />
<button class='btnAddSubcat btn btn-success glyphicon glyphicon-floppy-disk' type='submit'></button>
</div>
</div>
</form>
Функциональный файл
function AddSubCat() {
$Catid = $_POST['cat-select'];
$Subnaam = $_POST['subCat'];
$procedure = $_POST['Procedure'];
и некоторые вставки. это работает, просто не будет отображаться сообщение. Я ценю вашу помощь! Это должно быть так
он просто вставляет данные, но не показывает успех
Почему ты это делаешь? window.location.reload(); попробуйте закомментировать или использовать setTimeout. Довольно глупо использовать ajax, а затем перезагружать страницу.
зачем функция AddSubCat()?
@fms Third это моя функция вставки (но я не думаю, что остальное необязательно, потому что вставляется хорошо
Когда я задаю вам два довольно конкретных вопроса, чтобы прояснить вашу проблему, вы действительно думаете, что я просто хочу, чтобы вы повторили то, что уже сказали…?
@04FS вообще ничего не показывает....
Понимаю. Я думаю, лучше переместить свой успех
Я имею в виду, пожалуйста, попробуйте это
ой не могу выложить код
он говорит, что это слишком долго
ПРОВЕРЬТЕ в сетевой панели инструментов разработчика, каков фактический ответ на ваш запрос.
@04FS вы хотите дамп экрана?
@04FS это дает это index.php:8 GET https://healthywavez.com/cms/service/assets/css/style.css net::ERR_ABORTED 404 (Not Found) index.php:390 GET https://healthywavez.com/cms/service/mov_bbb.mp4 404 (Not Found)
Они оба имеют мало общего с вашим AJAX-запросом… проверьте, что ответит на Вон тот в сетевой панели.
@04FS я только что проверил его в Edge, и он работает
@ 04FS я действительно не знаю, что вы имеете в виду, но это показывает, что после вставки кода



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


я нашел это
$Catid = $_POST['cat-select'];
В вашем запросе AJAX у вас нет параметра с именем cat-select. Кроме того, вы должны проверить, действительно ли существуют $_POST и $_GET, прежде чем использовать их.
Откуда взялся кошачий выбор?
из выпадающего списка выше
Привет. Это может быть связано с браузером. Выбирайте хром. В случае, если он находится в локальной среде, вам следует избегать Https:// в сценариях CDN, как показано ниже.
Я проверил это в Edge, и это работает, но это не будет работать в Chrome
Не могли бы вы поделиться снимком экрана с консоли chrome devTools .. чтобы мы могли вам помочь :)
я добавил скриншоты
Попробуйте это, может вам поможет... stackoverflow.com/questions/40530598/…
Что говорит консоль браузера? Является запрос фактически «успешен» (имеется в виду код состояния HTTP, проверьте в сетевой панели.)