jquery 启动复选框检查未按预期工作
jquery launch checkbox check not working as expected
我有这个代码:
$(document).ready(function() {
$("input[type='checkbox']").click();
$("input[type='checkbox']").change(function(e) {
if ( $("input[type='checkbox']").is(":checked") === true )
{
$("textarea").val("");
$("textarea").prop("placeholder", "");
$("textarea").prop("disabled", true);
}
else
{
$("textarea").prop("disabled", false);
$("textarea").prop("placeholder", "Write here");
}
}); //checkbox .change()
});
加载页面时会发生点击事件,但不会启动更改事件。
对吗?还是我做错了什么?
谢谢。
尝试更改:
if ( $("input[type='checkbox']").is(":checked") === true )
至
if (this.checked )
您是在点击复选框后设置事件。而且你应该在事件中使用 "this":
$(document).ready(function() {
$("input[type='checkbox']").change(function(e) {
if ( $(this).is(":checked") === true )
{
$("textarea").val("");
$("textarea").prop("placeholder", "");
$("textarea").prop("disabled", true);
}
else
{
$("textarea").prop("disabled", false);
$("textarea").prop("placeholder", "Write here");
}
}); //checkbox .change()
$("input[type='checkbox']").click();
});
点击时您还没有附加事件。在写完事件定义后写下你的$("input[type='checkbox']").click();
。尝试与
相同的代码
$(document).ready(function() {
$("input[type='checkbox']").change(function(e) {
alert("Yes event triggered now");
if ( $(this).is(":checked") === true )
{
$("textarea").val("");
$("textarea").prop("placeholder", "");
$("textarea").prop("disabled", true);
}
else
{
$("textarea").prop("disabled", false);
$("textarea").prop("placeholder", "Write here");
}
}); //checkbox .change()
$("input[type='checkbox']").click();
});
我有这个代码:
$(document).ready(function() {
$("input[type='checkbox']").click();
$("input[type='checkbox']").change(function(e) {
if ( $("input[type='checkbox']").is(":checked") === true )
{
$("textarea").val("");
$("textarea").prop("placeholder", "");
$("textarea").prop("disabled", true);
}
else
{
$("textarea").prop("disabled", false);
$("textarea").prop("placeholder", "Write here");
}
}); //checkbox .change()
});
加载页面时会发生点击事件,但不会启动更改事件。
对吗?还是我做错了什么?
谢谢。
尝试更改:
if ( $("input[type='checkbox']").is(":checked") === true )
至
if (this.checked )
您是在点击复选框后设置事件。而且你应该在事件中使用 "this":
$(document).ready(function() {
$("input[type='checkbox']").change(function(e) {
if ( $(this).is(":checked") === true )
{
$("textarea").val("");
$("textarea").prop("placeholder", "");
$("textarea").prop("disabled", true);
}
else
{
$("textarea").prop("disabled", false);
$("textarea").prop("placeholder", "Write here");
}
}); //checkbox .change()
$("input[type='checkbox']").click();
});
点击时您还没有附加事件。在写完事件定义后写下你的$("input[type='checkbox']").click();
。尝试与
$(document).ready(function() {
$("input[type='checkbox']").change(function(e) {
alert("Yes event triggered now");
if ( $(this).is(":checked") === true )
{
$("textarea").val("");
$("textarea").prop("placeholder", "");
$("textarea").prop("disabled", true);
}
else
{
$("textarea").prop("disabled", false);
$("textarea").prop("placeholder", "Write here");
}
}); //checkbox .change()
$("input[type='checkbox']").click();
});