通过按钮动态传递值

时间:2017-06-12 09:44:24

标签: javascript jquery function

该功能根据输入复选框的值来检查输入复选框。

它正常工作,直到我尝试通过按钮“动态”传递值。我错过了什么,却看不出它是什么。

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>

欢迎任何有关解决方案的解释。

4 个答案:

答案 0 :(得分:2)

更改

$('input[type=checkbox][value='value_id']').prop('checked', true);
                              ^        ^
                               Syntax Error

 $('input[type=checkbox][value="'+ value_id + '"]').prop('checked', true);

您遇到语法错误

答案 1 :(得分:1)

您需要检查控制台是否有错误。当试图逃避价值时,要注意连接和引号。这应该可以解决问题

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>

答案 2 :(得分:1)

你应该使用+(连接)运算符来连接字符串和变量。

$('input[type=checkbox[value='+value_id+']').prop('checked', true);

&#13;
&#13;
function fill(value_id)
{           
    $('input[type=checkbox[value='+value_id+']').prop('checked', true);
}
&#13;
<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>
&#13;
&#13;
&#13;

答案 3 :(得分:1)

您缺少变量和字符串之间的加号(+)。您可以使用此代码段

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>