Я использую jQuery 1.6.1. Это основной код:
<div>Sidebar (on/off): <input id="sidebar" name="Sidebar" type="checkbox" value="value1"/></div>
<?php if ($row_rsPage['fullcontent']==1)
{ ?>
<div id="site_layout_full">
<?php
$oFCKeditor = new FCKeditor('FCKeditor1');
$oFCKeditor -> BasePath = 'fckeditor/';
$oFCKeditor -> Height = '455';
$oFCKeditor -> Value = $row_rsPage['pg_cont'];
$oFCKeditor -> Create();
?>
</div>
<?php } else { ?>
<div id="site_layout_content">
<?php
$oFCKeditor = new FCKeditor('FCKeditor1');
$oFCKeditor -> BasePath = 'fckeditor/';
$oFCKeditor -> Height = '455';
$oFCKeditor -> Value = $row_rsPage['pg_cont'];
$oFCKeditor -> Create();
?>
</div>
<div id="site_layout_sidebar">
<?php
$oFCKeditor2 = new FCKeditor('FCKeditor2');
$oFCKeditor2 -> BasePath = 'fckeditor/';
$oFCKeditor2 -> Config['CustomConfigurationsPath'] = '../sidefckconfig.js' ;
$oFCKeditor2 -> ToolbarSet = 'Short';
$oFCKeditor2 -> Height = '455';
$oFCKeditor2 -> Value = $row_rsPage['pg_sidecont'];
$oFCKeditor2 -> Create();
?>
</div>
$row_rsPage['fullcontent']==1
показывает только 1 деление (site_layout_full
), а когда нет, показывает 2 деления (site_layout_content
и site_layout_sidebar
).
Теперь я хочу переключить это без отправки страницы и сохранения значения в базе данных.
Так что я использую боковую панель для переключения состояния, но как мне получить это значение в MySQL.
Первоначально это работает без AJAX, когда я отправляю форму, а затем сохраняю ее в базе данных. Но я хочу, чтобы он был интерактивным, чтобы вам не приходилось отправлять всю страницу для изменения макета.
Я использую это для переключения (но не работает):
if (document.getElementById('sidebar').checked) {
// display fullcontent
document.getElementById('site_layout_sidebar').style.display = 'none';
document.getElementById('site_layout_content').style.display = 'none';
document.getElementById('site_layout_full').style.display = 'block';
}
else {
// display site_content, site_sidebar
document.getElementById('site_layout_full').style.display = 'none';
document.getElementById('site_layout_content').style.display = 'block';
document.getElementById('site_layout_sidebar').style.display = 'block';
}
И как мне сохранить это значение (состояние флажка) в $row_rsPage['fullcontent']
?
- Флажок отмечен:
$fullcontent
is 0
- Флажок снят:
$fullcontent
is 1
Кто-нибудь может помочь решить эту проблему?
Я изменил это:
Добавлен $ (document) .ready (function () {} вокруг javascript. Который запускает событие, но я скрываю тег div site_layout_full, потому что для каждой записи в базе данных fullcontent установлено 0
Так что я на самом деле скрываю тег div и больше не могу его показывать.
Я должен проверить базу данных с помощью javascript, а затем переключиться, но как?
Так что я могу сделать это:
document.getElementById('site_layout_full').style.display = 'none';
document.getElementById('site_layout_content').style.display = 'block';
document.getElementById('site_layout_sidebar').style.display = 'block';
и избавиться от if ($row_rsPage['fullcontent']==1)
?
Подводя итог, я должен:
- Проверка базы данных на полное содержание (не с php, а с javascript)
- Используйте это значение, чтобы показать скрытие тегов div (javascript)
- Динамически отображать / скрывать теги, и когда пользователь завершает работу, я отправляю значение в базу данных (с помощью php)
Как пожалуйста?