2015-06-25 3 views
0

Я пытаюсь вставить html в зависимости от того, выбрал ли пользователь страницу facebook или нет. На данный момент моя основная функция (searchOrDropdown()) не работает. Я пытаюсь устранить неполадки, и я хочу убедиться, что я использую метод inner.HTML js правильно.Внутренний HTML - правильная форма

Спасибо!

var getDropDown = function() { 
     return ' 
    <div class="btn-group page-actions" dropdown is-open="status.isopen" id ="dropdown_html"> 
     <button id="button_current_page_name" type="button" class="btn background-color-transparent color-text dropdown-toggle" data-toggle="dropdown"> 
      <span class="hidden-sm hidden-xs" id="user_pages_selected">Loading your Facebook pages...</span>&nbsp;&nbsp;&nbsp;<i class="fa fa-angle-down"></i> 
     </button> 
     <ul id="ul_user_pages_list" class="dropdown-menu" role="menu"> 
     </ul> 
    </div>'; 
     }; 

var getSearchBar = function() { 
     return ' 
     <div class="search-wrapper">  
      <form> 
       <input style="border-radius:15px" onkeyup ="PagesDropDown.pageValueDidChange(value)" style= "margin-top: 0.5cm" type="text" value="" required class="search-box" placeholder= "Enter your page" autofocus> 
      </form> 
     </div>'; 
    }; 

var searchOrDropdown=function(value) 
    { 
     //TODO find the wrapper element 
     var wrapper = document.getElementById("sdparent_wrapper")); 
     if (!FacebookPage.currentPage) { 
      wrapper.innerHTML = getSearchBar(); 
     } else{ 
      wrapper.innerHTML = getDropDown(); 
     } 
    }; 
+0

Вы проверили свою консоль разработчика на наличие ошибок ?. Если да, можете ли вы опубликовать сообщение об ошибке? –

+1

В строке, где вы создаете экземпляр 'var wrapper' –

+0

, есть дополнительный') 'var wrapper = document.getElementById (" sdparent_wrapper ")); удалите последний) – Brij

ответ

1

Вопрос - это ваши разрывы. Попробуйте добавить обратную косую черту в конце каждой строки:

var getDropDown = function() { 
    return '\ 
<div class="btn-group page-actions" dropdown is-open="status.isopen" id ="dropdown_html">\ 
    <button id="button_current_page_name" type="button" class="btn background-color-transparent color-text dropdown-toggle" data-toggle="dropdown">\ 
     <span class="hidden-sm hidden-xs" id="user_pages_selected">Loading your Facebook pages...</span>&nbsp;&nbsp;&nbsp;<i class="fa fa-angle-down"></i>\ 
    </button>\ 
    <ul id="ul_user_pages_list" class="dropdown-menu" role="menu">\ 
    </ul>\ 
</div>'; 
    }; 

И есть один слишком много скобка в вашем коде, так и изменить следующее:

var wrapper = document.getElementById("sdparent_wrapper"); 
+0

и а) слишком много – mplungjan

+0

О, хорошо, не видел этого. Я добавлю это к ответу, спасибо. –

+0

похоже, что это была проблема, по какой-то причине обратная косая черта не имела эффекта, пока я не поместил весь блок кода в одну строку. – jgozal

0

изменения вар обертка = документ .getElementById ("sdparent_wrapper")); to var wrapper = document.getElementById ("sdparent_wrapper")

+0

спасибо! это определенно было частью проблемы! – jgozal

Смежные вопросы