我完全难过了。我不知道为什么这不起作用,对我来说似乎很简单。它应该检查是否选中了复选框并传输文本框的值。相反,这只是在页面加载时弹出警报,然后在此之后没有任何内容。
$(function(){
if($("#same").is(":checked"))
{
alert("checked");
$("#name2").val($("#name1").val());
}
else
{
alert("unchecked");
$("#name2").val("");
}
});
我尝试过的事情:
if($("#same").attr("checked"))
adding == true on the end
$("#same").click($(this.toggle(...))) // this semi worked but toggled on and off improperly
在询问复选框之前,该复选框的ID为“相同”。
这段代码有什么问题?就像我说我很难过!谢谢:))
编辑1:这里要求的是一个html代码段。
<div class="tkfmheader">Info 2 <span class="tkshcbx">Same as 1 <input type="checkbox" name="same" id="same" /></span></div>
答案 0 :(得分:2)
这样的函数只在pageload上处理一次。
如果您希望此警报在您每次点击时都执行某项操作,则需要将该功能设置为事件:例如click()
事件或change()
事件。
您可以尝试以下方式:
// just a default way to assign functions in the ready event:
$(document).ready(function()
{
// add an event to some element
// the change event will work too (see link, it says about checkboxes)
// you can also add an event to every checkbox instead of just #same
$('#same').click(function()
{
// your alert function here
// you can ask things to #same by using $(this)
});
});
答案 1 :(得分:0)
尝试:
if($("#same:checked").length > 0)
如果大于0,则检查
答案 2 :(得分:0)
这就是你要找的东西
$(':checkbox').click(function() {
$(this).is(":checked") ? $("#name2").val($("#name1").val()) : $("#name2").val("");
});