Как передать данные из php и выполнить задачу
здравствуйте в php есть переменная $rema=5;
Есть так же html код такого содержания <ul> <li> <input type="text" value="4"> </li> <li> <input type="text" value="5"> </li> </ul> Как передать переменную rema в Jquery и выполнить следующее действие: Вставить блок <div class="arrow"></div> в элемент <li> у которого значение поля инпут равно переменной $rema, если там еще нет этого блока ? помогите пожалуйста |
$.get()
|
а подробнее можно, с примерчиком, плз не пойму как передавать эту переменную из пхп, и если можно нужна помощь в самом решении
|
var rema = '<?=$rema?>'; alert(rema); |
Если переменная дана на этапе генерации страницы, то и логика должна быть там же. То есть нафига она тебе в js?
|
А как определить элемент li у которого input равен переменной rema
|
Код шаблона покажи.
|
<nav >
<?function get_cat($menu) {
if(!$menu) {
return NULL;
}
$arr_cat = array();
if(count($menu) != 0) {
//В цикле формируем массив
foreach ($menu as $key=>$row){
//Формируем массив где ключами являются адишники на родительские категории
if(empty($arr_cat[$row['parent_id']])) {
$arr_cat[$row['parent_id']] = array();
}
$arr_cat[$row['parent_id']][] = $row;
}
//возвращаем массив
return $arr_cat;
}
}
//вывод каталогa с помощью рекурсии
function view_cat($arr,$lang,$parent_id = 0) {
//Условия выхода из рекурсии
if(empty($arr[$parent_id])) {
return;
}
echo '<ul class="parent'.$parent_id.'">';
//перебираем в цикле массив и выводим на экран
for($i = 0; $i < count($arr[$parent_id]);$i++) {
if($arr[$parent_id][$i]['parent_id']>0){
$rema=$arr[$parent_id][$i]['parent_id'];
?>
<script>
var rema = '<?=$rema?>';
$("input[value='"+rema+"']").parent('li').append('<div class="ar down_arrow">123</div>') ;
</script>
<?
}
print_r($arr[$parent_id][$i]['id']);
echo '<li><a href="/'.$lang.'/pages/page/'.$arr[$parent_id][$i]['id'].'">'.$arr[$parent_id][$i]['title'].'</a>';
echo "<input type='text' value=".$arr[$parent_id][$i]['id'].">";
//рекурсия - проверяем нет ли дочерних категорий
view_cat($arr,$lang,$arr[$parent_id][$i]['id']);
echo '</li>';
}
echo '</ul>';
}
$result = get_cat($menu);
//Выводи каталог на экран с помощью рекурсивной функции
view_cat($result,$lang);
?>
</nav>
|
Перед сороковой строчкой добавь такой код:
if ($rema == $arr[$parent_id][$i]['id']) { ?>
<div class="ar down_arrow">123</div>
<? }
А тег <script> убери, он не нужен. |
Стопэ. А че ты мутишь? Твоя $rema создается только при выполнении условия на 30-й строчке, и равна $arr[$parent_id][$i]['id']
Соответственно к чему все эти лишнии манипуляции? Используй сразу в нужном месте свое условие $arr[$parent_id][$i]['parent_id']>0 |
| Часовой пояс GMT +3, время: 00:06. |