我得到了这个js(也试过“改变”,结果相同)
$("input[class='tag-checkbox']").live("click",function(){
var thisCheck = $(this);
if (thischeck.is (':checked')){
var tag = $(this).val();
$("#tag-field").val(tag);
return false;
}
});
应该设置此复选框的值
<input class="tag-checkbox" type="checkbox" name="tag[]" value="' . $value['name'] . '" />
进入此文本域
<input id="tag-field" type="text" name="product-tag" />
但事件未被触发且文本字段未更改。我没有错误消息,所以脚本有问题吗?
答案 0 :(得分:0)
$("input.tag-checkbox").change(function() {
if ($(this).is(':checked')) {
var tag = $(this).val();
$('#tag-field').val(tag);
return false;
}
});
答案 1 :(得分:0)
尝试直接使用$(this)
:
$("input[class='tag-checkbox']").live("click",function(){
if ($(this).is (':checked')){
var tag = $(this).val();
$("#tag-field").val(tag);
return false;
}
});
工作示例:http://jsfiddle.net/hZVwE/
无论如何,你的脚本中的问题是你在thisCheck上输了一个错误(一旦C是大写然后不是)
答案 2 :(得分:0)
if语句中的变量拼写错误。它应该是“thisCheck”,但你有“thischeck”(没有资本C)。一旦你改变它,它就会起作用。
答案 3 :(得分:0)
你有两个案例来命名thisCheck
更正后的代码
$("input[class='tag-checkbox']").live("click",function(){
var thisCheck = $(this);
if (thisCheck.is (':checked')){
var tag = $(this).val();
$("#tag-field").val(tag);
return false;
}
});
演示 http://jsfiddle.net/M2xUH/4/
一些建议。代替使用input[class='tag-checkbox']
,您可以直接使用jquery类选择器。如
input.tag-checkbox
为什么你真的需要thisCheck
,你可以直接使用this
?