にサブメニューを追加するためにどのように私は、このようなドロップダウンリストを持っています。このマークされたボタンのいずれかをクリックすると、サブメニューにはAJAX
で取得したデータが表示されます。だから、最終的には次のようになります。 がクリックされたボタン
これは私のドロップダウンのコードです:
function showDetails(o){
var data = {};
var groupName = o;
data.action2='showConsistsOf';
data.groupName=groupName;
$.ajax({
url: "../includes/adapter.php",
type: "POST",
dataType: "JSON",
data: data,
async: true,
success: function (data) {
if(data){
//console.log(data);
for(var i=0;i<data.length;i++){
$('button[value=groupName]').append('<li>+data[i]+</li>');
}
}
else {
}
}
});
}
とデータ:
<ul class="dropdown-menu">
<?php
foreach($applications as $application){
echo "<li><button type='button' style='width:100%;' value='".$application['facebook_id']."' onclick='setSession(this.value);'>".$application['app_name']."</button></li>";
} ?>
<?php if($resultForUpperQuery){
echo '<hr>';
while($names=$resultForUpperQuery->fetch_assoc()){
$groupname=$names['ime_grupe'];
echo "<li><button type='button' style='width:100%;' value='".$groupname."' onclick='showDetails(this.value);'>".$groupname."</button></li>";
}
echo '<hr>';
}
?>
<?php if(isset($_SESSION['ap_id'])){
echo '
<li><a href="" data-target="#createAppGroup" data-toggle="modal">Create App Group</a></li>';}?>
<li><a href="app_setup.php">Add new app</a></li>
</ul>
ので、各ボタンは次のようになりますonclick="showDetails(this.value)"
機能を持っています検索結果は次のようになります。
["Notiflow", "Konfidence Hrvatska"]
それで、その値はサブメニューのドロップダウンの一部でなければならない基本的な配列です。 そして、私はあなたにも、コードの上から見ることができるよう、次のようにこのサブメニューを作ってみました:私は機能を解雇したクリックボタンに<li>
を追加しようとしたデータで
success: function (data) {
if(data){
console.log(data);
for(var i=0;i<data.length;i++){
$('button[value=groupName]').append('<li>+data[i]+</li>');
}
}
}
ので、foreachの値を。しかしボタンをクリックするだけでドロップダウンが閉じます。本当にこれを解決する方法を知らない。
[i]は最初のULは、メニューのためであり、あなたが必要なので、あなたはまた、ULを追加する必要があり、サブメニューとしてその中の2番目のもの。 –
それでも、ボタンをクリックしただけでドロップダウン全体が閉じられました。 – Ognj3n
をクリックした後、インスペクタでコンソールログに表示される内容は何ですか? –