2013-12-21 3 views
1

나는이 스크립트 list.js가 www.listjs.com에서 좋아합니다. 그것은 검색 및 필터링 PHP 파일의 출력을 필터링에 대한 완벽한 맞는 것,하지만 난 단지 일할 수 있습니다, 난 단지 7 줄 정도의 코드를 추가 할 필요가 있지만 작동하지 않습니다. 누가 와서 말해 줄 수 있니? 감사합니다Javascript list.js이 PHP 코드에

내가 추가 한 코드는

<?php 
defined('_JEXEC') or die(); 
?> 
**<script type="text/javascript" src="list.js"></script>** 
<form action="<?php echo CRoute::getURI(); ?>" method="post" id="jomsForm" name="jomsForm" class="community-form-validate"> 
<div class="jsProfileType" **id="jsProfileType"**> 
    **<input class="search" placeholder="Search" /> 
     <button class="sort" data-sort="label"> 
      Sort 
     </button>** 
    <ul class="unstyled"> 
    <?php 
     foreach($profileTypes as $profile) 
     { 
    ?> 
     <li class="space-12"> 

      <label for="profile-<?php echo $profile->id;?>" class="radio"> 
       <input id="profile-<?php echo $profile->id;?>" type="radio" value="<?php echo $profile->id;?>" name="profileType" <?php echo $default == $profile->id ? ' disabled CHECKED' :'';?> /> 
       <strong class="bold"><?php echo $profile->name;?></strong> 
      </label> 
      <?php if($profile->approvals){?> 
       <span class="help-block"><?php echo JText::_('COM_COMMUNITY_REQUIRE_APPROVAL');?></span> 
      <?php } ?> 

      <span class="help-block"> 
       <?php 
        $profile->description = JHTML::_('content.prepare',$profile->description); 
        echo $profile->description;?> 
      </span> 

      <?php if($default == $profile->id){?> 
        <em><?php echo JText::_('COM_COMMUNITY_ALREADY_USING_THIS_PROFILE_TYPE');?></em> 
      <?php } ?> 



     </li> 
    <?php 
     } 
    ?> 
    </ul> 
</div> 
<?php if((count($profileTypes) == 1 && $profileTypes[0]->id != $default) || count($profileTypes) > 1){?> 
<div style="margin-top: 5px;"> 
    <?php if($showNotice){ ?> 
    <span style="color: red;font-weight:700;"><?php echo JText::_('COM_COMMUNITY_NOTE');?>:</span> 
    <span><?php echo $message;?></span> 
    <?php } ?> 
</div> 
**<script> 
var options = { 
    list: "space-12" 
}; 
var userList = new List('jsProfileType', options); 
</script>** 
<table class="ccontentTable paramlist" cellspacing="1" cellpadding="0"> 
    <tbody> 
    <tr> 
     <td class="paramlist_key" style="text-align:left"> 
      <div id="cwin-wait" style="display:none;"></div> 
      <input class="btn btn-primary validateSubmit" type="submit" id="btnSubmit" value="<?php echo JText::_('COM_COMMUNITY_NEXT'); ?>" name="submit"> 
     </td> 
     <td class="paramlist_value"> 

     </td> 
    </tr> 
</tbody> 
</table> 
<?php } ?> 
<input type="hidden" name="id" value="0" /> 
<input type="hidden" name="gid" value="0" /> 
<input type="hidden" id="authenticate" name="authenticate" value="0" /> 
<input type="hidden" id="authkey" name="authkey" value="" /> 
</form> 
+1

무엇이 잘못에 변화를 일을 검색하려면,

var options = { valueNames: [ 'space-12' ] }; 

셋째로 옵션 정의를 변경해보십시오? 오류가 있습니까? 세부 사항을 포함해야합니다. 사실, 문제를 시연하기 위해 바이올린 (http://jsfiddle.net/)을 포함하는 것이 일반적입니다. 아마도 지금과 같은 방식으로 질문에 많은 도움을 얻지 못할 것입니다. – crempp

+0

브라우저 디버깅 도구에 어떤 오류가 있습니까? – user2910265

+0

알다시피, 나는 아직도이 사이트에서 아주 새롭다. 나는 다음과 같은 오류를 받는다. 잡히지 않은 TypeError : 정의되지 않은 list.js의 'childNodes'속성을 읽을 수 없다 : 1183 개의 태그가 붙은 @crempp –

답변

3

내가 PHP를 모르는를 강조,하지만 난 내 자신의 프로젝트에 list.js을 사용할 때 이전에이 오류를 보았다. 나는 물건을 올바르게 정의하지 않았다.

올바른 ID로 div을 설정했지만 '목록'클래스가 누락 된 것 같습니다.

<ul class="list"> 

두 번째로

<ul class="unstyled"> 

을 변경해보십시오, 나는 '목록'(적어도 최근 list.js 버전) 옵션에서 지원되는 키워드가 있다고 생각하지 않습니다. 당신이

<button class="sort" data-sort="label"> 

<button class="sort" data-sort="space-12"> 
+0

조언을 많이 주셔서 감사합니다. 오늘은 확실히 시험해보고 저녁 (1800hrs +3 GMT부터)까지 돌아올 것입니다. 감사 –