2012-07-02 3 views
-1

내가 작성한 또 다른 게시물은 jQuery에 대한 많은 경험이 없으므로 사과드립니다. 내가하려는 일은 상당히 단순 해 보인다.jQuery- 테이블 행에 맞추기 위해 div onclick 위치 변경

개요 : div가있는 테이블이 있습니다. 해당 테이블 내에서 각 행은 고유 한 요소를 나타냅니다. 나는 링크가 각 행에서 클릭 될 때 해당 요소에 해당하는 데이터가 테이블 옆에 div에 표시되도록 설정했습니다. 이 부분은 작동합니다.

내가 뭘 하려는지 : 나는 선택한 테이블 행과 인라인을 표시 팝업 div의 상단 싶습니다.

<div id="container" style="display:inline-block"> 
     <table> 
      <tr id="selected_row"> 
      <td> 
       <a href="/gohere" onclick="updatePos('#param_detail_container');"> 
        @Html.DisplayFor(model => item.Name) 
       </a> 
      </td> 
      </tr> 
     </table> 
    </div> 

    <div id="popupDiv" style="display:inline-block; position:absolute; "> 
     Contenet in here... 
    </div> 

스크립트 : 나는 다음과 같은 오류가 발생

<script type="text/javascript" src="~/Scripts/jquery-1.6.2.min.js"></script> 
    <script type="text/javascript"> 
     $(document).ready(function updatePos(popupDiv) { 
      var top = $('#selected_row').offset().top; 
      popupDiv.css({ top: top + "px" }).show(); 
      }); 
    </script> 

:

Microsoft JScript runtime error: Unable to get value of the property 'replace': object is null or undefined 

'교체'가 jquery1.6.2.min의 내부에 위치한

여기 내 간단한 코드입니다 .js. 나는 이것이 내가 popupDiv의 top 속성을 어떻게 설정하려고하는지와 관련이 있다고 가정하고있다. 어떤 제안?

답변

2

기능은 글로벌, 그래서 외부 ready를 두지해야합니다

/*$(document).ready(function() { 

});*/ 

function updatePos(popupDiv) { 
     var top = $('#selected_row').offset().top; 
     $(popupDiv).css({ top: top + "px" }).show(); 
    } 

를 귀하의 경우

+0

이것은 내가 필요한 것 같습니다. 클릭 할 때만 문제가 발생합니다. CSS는 popupDiv의 유효한 속성이 아닙니다. –

+1

이는 $ (popupDiv) .css (...)가되어야하기 때문입니다. –

+0

haa 괜찮습니다. 이제 적어도 뭔가하는 것입니다. 감사. –

0

$(document).ready이 도움이 알려줘 사용할 필요합니다.

<script type="text/javascript" src="~/Scripts/jquery-1.6.2.min.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     function updatePos(popupDiv) { 
     var top = String($('#selected_row').offset().top); 
      $(popupDiv).css("top", top + "px").show(); 
     }; 
     }); 
</script> 
+0

내가 찾고 있던 것이 아닙니다. –

관련 문제