根据服务器响应设置复选框

Set checkbox according to server response

本文关键字:设置 复选框 响应 服务器      更新时间:2023-09-26

用户可以选中/取消选中复选框,然后它的值被保存到数据库中:

<input type="checkbox" value="open" name="timeFormat[]" id="isCheckedFormat" checked>

保存为:{TimeFormat': [u'open']}

当我把它调用回浏览器时,console.log()显示为:"[u'open']"

在JSFiddle中,我尝试使用这个来设置用户的首选设置,但这并没有将复选框设置为选中。

var x=[u&#39;open&#39;];
if (x=='open'){
    $('#isCheckedFormat').prop('checked', true);
}else{
$('#isCheckedFormat').prop('checked', false)
}

如何设置复选框。我是否需要剥去'open'....之前和之后的所有字符这怎么可能呢?

尝试检查字符串是否包含单词open,例如…

var x="[u&#39;open&#39;];"
$('#isCheckedFormat').prop('checked', x.contains('open'));

我不确定你是如何发送你是如何发送响应的。但这将为您工作:

if(x.indexOf("open") > -1)
  $('#isCheckedFormat').prop('checked', true);
else
  $('#isCheckedFormat').prop('checked', false);

您可以使用regex:

$('#isCheckedFormat').prop('checked', /open/.test(x));

也可以使用。indexof

$('#isCheckedFormat').prop('checked', x.indexOf("open") != -1);