通过按钮动态传递值
问题描述:
函数根据值检查输入复选框。通过按钮动态传递值
它正常工作,直到我试图通过按钮传递“dinamicly”的值。我错过了一些东西,但看不到它是什么。
function fill(value_id)
{
$('input[type=checkbox][value='value_id']').prop('checked', true);
}
<div class="btn open-modal" data-modal="somemodal" onclick='fill("12-12")'>check</div>
对解决方案的任何解释是值得欢迎的。
答
变化
$('input[type=checkbox][value='value_id']').prop('checked', true);
^ ^
Syntax Error
要
$('input[type=checkbox][value="'+ value_id + '"]').prop('checked', true);
你有语法错误
答
您需要检查控制台错误。试图逃避价值时,要小心concatanation和引号。这应该做的伎俩
function fill(value_id) {
$('input[type=checkbox][value="' + value_id + '"]').prop('checked', true);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="btn open-modal" data-modal="somemodal" onclick='fill("12-12")'>check</div>
+1
感谢您的快速响应!没有注意到连接... – Qu4k3
答
您应该使用+(串连)运算符来连接字符串和变量。
$('input[type=checkbox[value='+value_id+']').prop('checked', true);
function fill(value_id)
{
$('input[type=checkbox[value='+value_id+']').prop('checked', true);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="btn open-modal" data-modal="somemodal" onclick='fill("12-12")'>check</div>
+0
感谢您的解释!错过了非常基本的东西... – Qu4k3
答
你缺少变量和字符串之间添加加号(+)。您可以使用此代码段
function fill(value_id) {
$('input[type=checkbox][value=' + value_id + ']').prop('checked', true);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="btn open-modal" data-modal="somemodal" onclick='fill("12-12")'>check</div>
<input value="12-12" type="checkbox"></input>
非常感谢!我正在使用'console.log(“进入fill()”+ value_id)'看看我是否至少进入了函数......并没有注意到串联... – Qu4k3