簡體   English   中英

使用一個元素的值在jQuery中查找另一個

[英]using the value of one element to find another in jquery

我在項目中有一個選擇框。 它是表單的一部分。 通過菜單選擇產品。 在同一行上是產品價格必須到達的輸入。 在頁面中隱藏的某個地方,我有一個div,該div已通過產品名稱ID標識。 該div包含產品數據(價格和其他一些數據)。 我有一個事件處理程序,它對選擇框做出反應(javascript on(change))。

在事件處理程序中,我有以下代碼來查找包含價格的div(prijs,我是荷蘭人)。 沒用 我在這里做錯了什么?

$(this).parent('tr').find('#prijs').val($(div).find($this.val()).find('#prijs')).val();

我修復了所有愚蠢的錯字。 感謝您的幫助。 星期四晚上的緊縮時間讓我有些偏南。 我將在下面給出一個更詳細的示例。

   <select name='producten[1]' class='product'>
     <option value='phone1'>phone1</option>
     <option value='phone1'>phone2</option>
    </select>
    <input type="text" id="prijs"></input>
    <input type="text" id="per"></input>


    <div class="hidden" id="phone1"><div id="dbprijs">'125.00'</div><div id="dbper">a piece</div></div>
    <div class="hidden" id="phone2"><div id="dbprijs">225.00</div><div id="dbper">a piece</div></div>

   <script type="text/javascript">
    $(document).ready(
        function(){
                        $("body").on("change",".product", function(){

                              $(this).parent('tr').find('#prijs').val($('div').find($(this).val()).find('#dbprijs')).val();
                        });
        }
    );
   </script>

具有以上代碼的JSFiddle

據我所知,這里真正的挑戰是告訴JQuery查找具有選擇框值的ID。 感謝Fabrizio編輯原始問題。

一種可能的錯誤是this沒有被包裝在$()
其次, div沒有單引號。

$(this).parent('tr').find('#prijs').val($('div').find($(this).val()).find('#prijs')).val();

有時很難使用.on 因此,請嘗試使用.change代替下面提到的代碼。

jQuery("select.product").change( function(){ /* Now your code */ });

除了需要確保如何獲得該tr 正如您在html中提到的那樣,它必須位於select字段的父元素內。

希望這會清除方法! 干杯!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM