確定,所以我有單選按鈕的元素,我克隆添加按鈕被點擊時此元素;但是,一旦我這樣做,初始元素上的按鈕將被取消選中。我知道爲什麼會發生這種情況,但是一旦我開始實施一項解決方案並沒有達到我的預期。Jquery的xpath的選擇
這裏是我的解決辦法:
//This stores the value of the checked element into a variable before the clone
var radioKeep = $('input.event'+(numOfParts-1)+':checked').val();
//Cloned the element passed into the function
$(element).parent().clone(true, false).insertAfter($(element).parent());
然後我試圖確保使用jQuery和XPath的以下組合的初始單選按鈕重新檢查克隆後。
$('input.event'+(numOfParts-1)+'[@value='+radioKeep+']').attr('checked', 'checked');
其結果是,所有無線電元件進行檢查......爲什麼???
在此先感謝。
我也許應該指出,並不是所有的要素實際出現進行確認,僅在源代碼是他們展現檢查=「選中」頁面上的最後單選按鈕,但是並不明顯保持檢查。 –
這很難說,你可以'console.log(radioKeep +' - '+ numOfParts)',這些值是否改變?如果不是,那麼您的選擇器將匹配每個克隆的元素,並且您也永遠不會清除該值,因此該值將始終匹配。似乎這很可能是問題。你能得到一個jsFiddle嗎? – Ohgodwhy
我在試圖找出問題的同時警告了一些值,並且一切都很有道理,我嘗試這樣做。所以,$( 'input.event' +(numOfParts-1)的計算結果爲$( 'input.event0') 和radioKeep計算結果爲正確的值。 –