2017-05-05 54 views
0

我試圖獲取屬於選中的單選按鈕的標籤的文本,但我無法和我的代碼無法正常工作:如何獲取屬於選中的單選按鈕的標籤文本

$(document).ready(function() { 
 
    var IS_SEX_Title 
 
    $('input[name="IS_SEX"]:radio:checked').each(function() { 
 
    IS_SEX_Title = $(this).parent().find('label').text(); 
 
    }); 
 
    alert(IS_SEX_Title) 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<label class="radio-inline" style="margin-right:10px;"> 
 
    <input value="0" class="form-control psd-input-radio" name="IS_SEX" id="IS_SEX_0" data-top-id="IS_SEX" checked="" type="radio"> 
 
    male 
 
</label>

+0

父*爲*了'label' - 刪除'找到()'。還要注意'each()'是多餘的,因爲你只能有一個選中的單選按鈕 –

回答

0

嘗試是這樣的:

$('input[name="IS_SEX"]').parent('label').text(); 

它將返回male

Working Fiddle

0

label - 刪除find()。另請注意,each()是多餘的,因爲每個命名組只能有一個選中的單選按鈕。

$(document).ready(function() { 
 
    var IS_SEX_Title = $('input[name="IS_SEX"]:radio:checked').parent().text().trim(); 
 
    console.log(IS_SEX_Title) 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<label class="radio-inline" style="margin-right:10px;"> 
 
    <input value="0" class="form-control psd-input-radio" name="IS_SEX" id="IS_SEX_0" data-top-id="IS_SEX" checked="true" type="radio"> 
 
    male 
 
</label> 
 
<label class="radio-inline" style="margin-right:10px;"> 
 
    <input value="0" class="form-control psd-input-radio" name="IS_SEX" id="IS_SEX_1" data-top-id="IS_SEX" type="radio"> 
 
    female 
 
</label>

0

只需添加這$(this).parent().text();,而不是$(this).parent().find('label').text();,因爲標籤上有文字。所以你不需要找到標籤。

請參閱使用下面的代碼片段:

$(document).ready(function() { 
 
    var IS_SEX_Title 
 
    $('input[name="IS_SEX"]:radio:checked').each(function() { 
 
    IS_SEX_Title = $(this).parent().text(); 
 
    }); 
 
    alert(IS_SEX_Title); 
 

 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<label class="radio-inline" style="margin-right:10px;"> 
 
      <input value="0" class="form-control psd-input-radio" name="IS_SEX" id="IS_SEX_0" data-top-id="IS_SEX" checked="" type="radio">male</label>

0

它不工作,因爲你正在改變中的forEach值。嘗試將警報放在foreach中,然後您可以直接按課程訪問。看看波紋管:

var IS_SEX_Title 
 
$('input[name="IS_SEX"]:radio:checked').each(function() { 
 
    IS_SEX_Title = $('.radio-inline').text(); 
 
    console.log(IS_SEX_Title); 
 
    alert(IS_SEX_Title); 
 
}); 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<label class="radio-inline" style="margin-right:10px;"> 
 
    <input value="0" class="form-control psd-input-radio" name="IS_SEX" id="IS_SEX_0" data-top-id="IS_SEX" checked="" type="radio"> 
 
    male 
 
</label>

相關問題