我正在構建一個網頁,其中包含有關我們公司可以執行的各種分析的信息。我試圖設置它的部分是每個分析的高級概覽部分,然後是一個「更詳細」按鈕,打開一個對話框,其中包含更深入的信息。jQuery選擇器有問題
我有這個工作很好,如果我使用多行代碼明確提到每個按鈕和每個對話框的ID。但是,當我嘗試使用選擇器使其成爲幾行代碼時,我無法再使用它了。
下面是一些HTML的:
<div id="van_westendorp" class="solution price1">
<h3 class="solution_header"><a href="#">Van Westendorp</a></h3>
<div class="solution_content">
<ul class="overview">
<li><em>Price:</em>
<div class="dollar ui-state-default ui-corner-all"><img src="images/dollar.png"></div>
<div class="dollar ui-state-default ui-corner-all"><img src="images/dollar.png"></div>
</li>
<li><em>Time:</em> 3-5 days</li>
<li><em>Pros:</em></li>
<ul>
<li>Easy task for the respondent.</li>
<li>Prices can be open-ended.</li>
</ul>
<li><em>Cons:</em></li>
<ul>
<li>Deliverables imply more precision than actually exists.</li>
<li>Heavy reliance on respondents' understanding of questions.</li>
</ul>
</ul>
<div id="van_westendorp_link" class="center">
<button class="ui-state-default ui-corner-all detail">More Details</button>
</div>
<div id="van_westendorp_window" class="dialog" title="Van Westendorp Details">
<h2 class="center">How It Works</h2>
<ul>
<li>Things happen.</li>
<li>It's awesome.</li>
</ul>
<h2 class="center">Why It Works</h2>
<ul>
<li>Science!</li>
</ul>
</div>
</div>
</div>
ID爲「van_westendorp_link」的DIV是按鈕,與ID「van_westendorp_window」的DIV是應打開對話窗口。
而這裏的什麼我已經試過了JavaScript的最新迭代:
$("[id$='link']").click(function(){
$(this).next("[id$='window']").dialog('open');
event.preventDefault();
});
的第一行代碼的工作;如果我用對對話框ID的顯式引用替換第二行,那麼一切正常。這是我嘗試使用選擇器引用對話框的第二行,這個選擇器讓我感到困惑。
我正在使用查詢用戶界面的對話框代碼,如果這很重要。任何想法爲什麼我無法正確引用對話框?
你加載UI庫? – Gustonez