我必须通过jquery将文本从一个文本框复制到另一个文本框,我已经在我的代码中应用了jquery事件,它的工作原理部分正确。守则如下:
<html>
<head>
<script src="js/jquery.js" ></script>
</head>
<body>
<form>
<input type="text" name="startdate" id="startdate" value=""/>
<input type="text" name="enddate" id="enddate" value=""/>
<input type="checkbox" name="checker" id="checker" />
</form>
<script>
$(document).ready(function(){
$("#startdate").change(function(o){
if($("#checker").is(":checked")){
$("#enddate").val($("#startdate").val());
}
});
});
</script>
</body>
</html>这段代码的工作原理如下:默认情况下,我总是选中复选框,因此每当我插入开始日期和选项卡时,开始日期就会被复制到结束日期。
My Problem
但是现在如果取消选中复选框并更改开始日期,然后再选中复选框,开始日期就不会被复制,那么在这种情况下应该做什么。请帮帮我..。
发布于 2010-06-08 09:50:41
就像这样:
$(document).ready(function(){
$("#startdate").change(function(o){
if($("#checker").is(":checked")){
$("#enddate").val($("#startdate").val());
}
});
$("#checker").change(function() {
if($(this).is(":checked")) {
$("#enddate").val($("#startdate").val());
}
});
});发布于 2010-06-08 09:50:31
还为checkbox添加一个事件:
$('#checker').bind('click', function () {
if ($(this).attr('checked')) {
$("#enddate").val($("#startdate").val());
};
});或者,如果没有值,则可能只使用:
$('#checker').bind('change', function () {
var endDate = $('#enddate');
if ($(this).attr('checked') && jQuery.trim(endDate.val()) === "") {
endDate.val($("#startdate").val());
};
});发布于 2010-06-08 09:52:12
只需将单击事件.bind()到复选框即可。
$('#checker').click(function(){
if($(this).is(':checked')){
$("#enddate").val($("#startdate").val());
}
});https://stackoverflow.com/questions/2996223
复制相似问题