单击带有JAVASCRIPT的复选框后填写文本框

时间:2013-04-16 13:31:35

标签: javascript text input checkbox

我在表格中有姓名和姓氏的以下文字输入:

<label>First name: </label></td>
<input type="text" name="firstName">
<label>Last name: </label></td>
<input type="text" name="lastName"></td>

然后我为信用卡持有人提供了另一个文本输入,然后是一个复选框:

<input type="text" size="20" id="nameOnCard" name="nameOnCard" data-stripe="name"/></td>
<input type="checkbox" id="sameNameOnCard">

我希望每当用户点击复选框时,#nameOnCard输入就会填充名字和姓氏。

我开始使用这样的脚本:

$(document).ready(function(){
    $("#sameNameOnCard").click(function(){

我应该如何从Firts和姓氏中检索信息并将其插入nameOnCard框?

谢谢!

2 个答案:

答案 0 :(得分:2)

尝试:

$(document).ready(function(){
    $("#sameNameOnCard").on("click", function () {
        var firstName, lastName;
        if ($(this).is(":checked")) {
            firstName = $('[name="firstName"]').val();
            lastName = $('[name="lastName"]').val();
            $("#nameOnCard").val(firstName + " " + lastName).prop("readonly", true);
        } else {
            $("#nameOnCard").val("").prop("readonly", false);
        }
    });
});

DEMO: http://jsfiddle.net/hF26S/1/

它将使用jQuery“attribute equals”选择器获取名字和姓氏元素(因为获取它们的唯一方法是name属性),用.val()获取它们的值,然后设置最终文本框的值。

我添加了一些额外的东西,在选中复选框时将“nameOnCard”元素设置为readonly,这样在检查时它们就无法输入。

如果在单击时选中该复选框,则会复制名字和姓氏。如果未选中该复选框,则会将该值设置为空。

参考文献:

答案 1 :(得分:-1)

试试这个

 $(document).ready(function(){
        $("#sameNameOnCard").click(function(){
        if($(this).is(":checked"))
        {
             $("#nameOnCard").val($("input:[name=firstName]").val() + " " + $("input:[name=lastName]").val());
        }
        else
        {
               $("#nameOnCard").val("");
        }
    });
相关问题