Javascript无法在用户控件中找到div的ID

时间:2013-05-26 05:45:08

标签: javascript asp.net user-controls contentplaceholder coda-slider

我有一个coda滑块,我放在用户控件(ascx文件)中,它在测试页面上完美运行。

但是,当我将相同的用户控件放在基于母版页的测试页中的内容占位符时,它会停止正常工作。似乎javascript函数无法正确识别DIV的ID,因为它现在位于内容占位符内。我已经阅读了一些其他链接,但它们似乎略有不同,我尝试使用document.getElementById,但不确定我是在正确的轨道上还是只是弄乱了语法。我也尝试将ct100_cpMC_放在id前面。

<%@ Page Title="TestPage - Test User Control" Language="C#" MasterPageFile="MasterPage.master" AutoEventWireup="true" CodeFile="TestPage.aspx.cs" Inherits="_TestPage" %>

<%@ Register Src="~/UserControls/WhatCustomersAreSaying.ascx" TagPrefix="uc1" TagName="WhatCustomersAreSaying" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
  <link rel="stylesheet" type="text/css" media="screen" href="css/coda-slider.css" />
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
  <script src="js/jquery.easing.1.3.js"></script>
  <script src="js/jquery.coda-slider-3.0.min.js"></script>

<script>
     $(function () {

         $('#slider-id').codaSlider({
               autoSlide:true,
               autoHeight:false
         });
     });
</script> 
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="cpMC" Runat="Server">

    <uc1:WhatCustomersAreSaying runat="server" ID="WhatCustomersAreSaying" />

</asp:Content>

我的用户控件内部是一个ID为“slider-id”的DIV,javascript函数需要找到它。

正如我前面提到的,我不确定是否需要使用document.getElementById以及如何使用更简单的方法在引号$('#slider-id')中添加ID到ID以便javascript函数知道它正在寻找的ID是在内容占有者中。

1 个答案:

答案 0 :(得分:1)

我有一个朋友帮助我,这是有效的。我知道我需要(文档).ready但没有正确的语法。这就解决了我的问题,

<script>

$(document).ready(function ($) {
         $('#slider-id').codaSlider({
             autoSlide:true,
             autoHeight:false
         });
     });
</script>