协助表单和JavaScript

时间:2015-02-03 14:07:32

标签: javascript php jquery html css

我希望得到以下帮助。

我有三个输入,第一个是身份证号码,第二个是出生日期,第三个是性别。我想要的是当我在第一个字段上插入一个标识号以自动插入dateofbirth和gender。南非身份证号码包含出生日期和性别。我想要的只是当我将ID号,出生日期和性别插入自动插入

身份证号码的样本是140101 5000 089 - 前六个号码是从yymmdd开始的出生日期,第二个号码是如果一个号码从0-4开始是一个女性,如果它以5-9开头男性

First name: <input type="number" name="id_number" maxlength="13"><br>
Birthdate: <input type="text" class="datepicker" name="birthdate"><br>
Gender: <input type="text" name="gender"><br>

2 个答案:

答案 0 :(得分:2)

您需要从第一个输入中删除“type = number”。否则,它将不允许输入空格。然后,您可以将ID拆分为一个单词数组并使用它们。

var $input1 = $("input[name=id_number]"),
    $input2 = $("input[name=birthdate]"),
    $input3 = $("input[name=gender]");

$input1.on("keyup", function(){
		
	var id = $input1.val().split(" "),
        birthdate="",
        gender="",
        part1 = id[0],
        part2 = id[1];
    
    if(part1.length>5) birthdate = part1.substr(0,2) + "/" + part1.substr(2,2) + "/" + part1.substr(4,2);
	
	$input2.val(birthdate);
    
    if(part2 && part2.length){
         if(parseInt(part2[0]) <5)
             gender = "Female"
         else
             gender = "Male"
      
        $input3.val(gender);
    }
	
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

Identity number : <input type="text" name="id_number" maxlength="13"><br>
Birthdate: <input type="text" class="datepicker" name="birthdate"><br>
Gender: <input type="text" name="gender"><br>

http://jsfiddle.net/as6rdtb1/

希望它有所帮助。

答案 1 :(得分:0)

首先从表单中检索数字(我已经修改了一下html)

<input type="text" name="id_number" id="IdentityNumber" maxlength="13">

string identityNumber = document.getElementById("IdentityNumber");

然后您可以重复使用下面答案中使用的逻辑从中提取字段。
 (出生日期和性别)

South African ID Number Validate and Get Age and Gender

然后将它们分配回相应的文本框 (根据上面的@Elgringorrible答案。)