У меня есть семейное древо, и в раскрывающемся списке также есть все имена родителей и дочерних элементов, внутри каждого дочернего элемента есть ссылка. Я хочу, чтобы при нажатии на любую дочернюю ссылку отображался его отец в раскрывающемся списке (установите этот флажок).Пожалуйста, кто-нибудь, помогите мне.
это функция для отображения ребенка
function getChild($family_tree,$parent){
$list = "<ul style='list-style-type:none'>";
foreach($family_tree[$parent] as $each_child){
$list .= "<li>" . $each_child[0]." "."<a style='text-decoration:none ; font-size: smaller' onclick='changeParent()' href='#'>".'Change parent'."</a>";
if(isset($family_tree[$each_child[1]])){
$list .= getChild($family_tree,$each_child[1]);
}
$list .= "</li>";
}
$list .= "</ul>";
return $list;
}
и эта функция для получения отца ребенка
public function getParentId($childId)
{
$statment = $this->db->prepare("SELECT parent FROM `person` WHERE id = $childId");
$statment->execute();
$result = $statment->fetchAll();
foreach($result as $output){
return $output['parent'];
}
}
и это моя форма
<form method="post">
Child Name: <input type ='text' name ='name' placeholder="Enter name here">
<select name="parent" id="names" onchange="getSelectValueId()">
<option>--Select Parent--</option>
<option><?php echo $object->displayParent()?></option>
</select>
<br>
<input type="submit" name="submit" value="Enter">
</form>
Обновление **** Теперь я получаю идентификатор ребенка, когда нажимаю на ссылку, и у меня есть функция, которая получает идентификатор родителя ... как яможете изменить выбранную сейчас опцию ??любой может помочь мне плз !!!!
эта функция получает идентификатор ребенка по ссылке
function changeParent(){
$(document).ready(function(){
$("a").click(function() {
function getEventTarget(e) {
e = e || window.event;
return e.target || e.srcElement;
}
var ul = document.getElementsByClassName('listSet');
[].forEach.call(ul, function(el) {
el.onclick = function(event) {
var target = getEventTarget(event);
alert(target.id);
};
});
});
});
}