使用Jquery获取复选框文本

时间:2011-04-01 20:13:43

标签: jquery html

<input type="checkbox" name="PrePayment">Pre-Payment<br />

如何使用Jquery从中获取“预付款”文本?

谢谢!

5 个答案:

答案 0 :(得分:47)

我建议将文字放在<label>标记内,以便您点击它(以便屏幕阅读器等可以理解您的表单):

<input type="checkbox" name="PrePayment" id="pre-payment">
<label for="pre-payment">Pre-Payment</label>
<br />

然后,整件事变得容易:

var text    = $('label[for=pre-payment]').text();
var or_this = $('#pre-payment').next('label').text();

我更喜欢第一个选项label[for=...],因为它不像第二个选项那么脆弱

答案 1 :(得分:21)

也许:

$("input[name='PrePayment']")[0].nextSibling.nodeValue;

Try it here.

答案 2 :(得分:8)

您可能应该在复选框中有一个值属性。

<input type="checkbox" name="PrePayment" value="Pre-Payment">Pre-Payment<br />

然后你可以简单地使用attr命令:

$(input).attr('value');

答案 3 :(得分:2)

检查以下示例,您将获得脚本如何在jQuery中获取复选框标签

<html>
 <body>
     <ul>
         <li>
             <input type="checkbox" name="mouse" value="1" id="mouse"  /><label for="mouse">Mouse</label>
            </li>
            <li>
             <input type="checkbox" name="keyboard" value="1" id="keyboard"  /><label for="mouse">Keyboard</label>
            </li>
            <li>
             <input type="checkbox" name="monitor" value="1" id="monitor"  /><label for="mouse">Monitor</label>
            </li>
        </ul>
    </body>
</html>

<script type="text/javascript">
 var label = jQuery('label[for=' + jQuery(this).attr('id') + ']').html();
 alert(label);
</script> 

从此链接获取的代码:http://chandreshrana.blogspot.in/2015/09/how-to-get-checkbox-label-text-jquery.html

答案 4 :(得分:0)

我有一个与此类似的问题-可以使这项工作(使用HTML5)的另一种方法是使用数据属性。

作为一个例子,您将数据属性设置如下:

<input type="checkbox" name="PrePayment" data-text="Pre-Payment">Pre-Payment<br />

然后您可以使用以下jQuery读取此数据属性:

$(input).data('text');

这样做的好处是,如果需要,可以有一个单独的value参数。