13-03-2026 17:14
Sở hữu một đường truyền Internet ổn định là nhu cầu thiết yếu để làm việc và giải trí. Tuy nhiên, đôi khi bạn sẽ gặp phải tình trạng mạng FPT bị chậm, chập chờn hoặc giật lag. Đừng quá lo lắng, bài viết này sẽ hướng dẫn bạn các bước tự kiểm tra và xử lý sự cố nhanh chóng ngay tại nhà.
`);
$(document).on('click', '.show-toc-toggle-btn', function () {
if ($('.widget-toc ol').is(':visible')) {
$('.widget-toc ol').hide('smooth');
$('.show-toc-toggle-btn').text('[ Hiện ]');
} else {
$('.widget-toc ol').show('smooth');
$('.show-toc-toggle-btn').text('[ Ẩn ]');
}
$('.widget-toc').css('width', '100%');
});
})
let provinceId = 0;
let districtId = 0;
$(document).ready(function () {
fetchProvinces();
let $selectLocationModal = $('#selectLocationModal');
$('.province-select').select2({
placeholder: 'Lựa chọn tỉnh/thành phố',
allowClear: true,
dropdownParent: $selectLocationModal
});
$('.district-select').select2({
placeholder: 'Lựa chọn quận/huyện',
allowClear: true,
dropdownParent: $selectLocationModal
});
$('.ward-select').select2({
placeholder: 'Lựa chọn xã/phường',
allowClear: true,
dropdownParent: $selectLocationModal
});
const $provinceSelect = $('.province-select');
$provinceSelect.change(function (e) {
e.preventDefault();
provinceId = $(this).val();
fetchDistricts(provinceId);
});
$('.district-select').change(function () {
districtId = $(this).val();
fetchWards(districtId);
});
$('#updateLocationForm').validate({
onfocus: false,
onkeyup: false,
onclick: false,
rules: {
province_id: {required: true},
},
messages: {
province_id: "Vui lòng chọn tỉnh/thành.",
},
submitHandler: function (form) {
$.ajax({
url: "https://capquangfpt.vn/update-location",
type: 'POST',
data: {
province_id: $('#sl_provinces').val(),
district_id: $('#sl_districts').val(),
ward_id: $('#sl_wards').val(),
"_token": "hgGRSxAElqDDqjU2fMzz5LSiSFLuFMGRQUThaFUW"
},
success: function (res) {
window.location.reload();
}
})
}
})
$('#btnSaveLocation').click(function (e) {
e.preventDefault();
$('#updateLocationForm').submit();
});
$('.dynamic_content table').each(function() {
if (!$(this).parent().hasClass('table_wrapper')) {
$(this).wrap('<div class="table_wrapper"></div>');
}
});
})
function fetchProvinces() {
$.ajax({
url: `/provinces`,
type: 'GET',
success: function (data) {
$('.province-select').children().remove();
data.forEach(province => {
$('.province-select').append(`
<option value="${province.id}">${province.name}</option>
`);
if (province.id == "") {
$('.current_province').text(province.name);
}
});
if (data.length > 0) {
fetchDistricts(data[0].id);
}
}
})
}
async function fetchDistricts(provinceId) {
try {
let data = await $.getJSON(`/provinces/${provinceId}/districts`);
$('.district-select').empty(); // Xóa tất cả option cũ
data.forEach(district => {
$('.district-select').append(`
<option value="${district.id}">${district.name}</option>
`);
});
if (data.length > 0) {
await fetchWards(data[0].id);
}
} catch (error) {
console.error("Error fetching districts:", error);
}
}
function fetchWards(districtId) {
$.ajax({
url: `/provinces/${provinceId}/districts/${districtId}/wards`,
type: 'GET',
success: function (data) {
$('.ward-select').children().remove();
data.forEach(ward => {
$('.ward-select').append(`
<option value="${ward.id}">${ward.name}</option>
`)
});
}
})
}