我的 dataString 中有一个很长的列表,这里是一小部分:
var dataString = '&header' + header
+ '&logo' + logo
+ '&body' + body;
我只想在检查徽标复选框时才在数据串联中包括徽标。如何检查 dataString 中的徽标复选框是否已选中?
我的 dataString 中有一个很长的列表,这里是一小部分:
var dataString = '&header' + header
+ '&logo' + logo
+ '&body' + body;
我只想在检查徽标复选框时才在数据串联中包括徽标。如何检查 dataString 中的徽标复选框是否已选中?
我可以推荐三元运算符吗?
var logoCheckboxIsChecked = document.getElementById('logoCheckboxId').checked;
var dataString = '&header' + header
+ logoCheckboxIsChecked ? '&logo' + logo : '',
+ '&body' + body;
更新
在我最初的回答中,logoCheckboxIsChecked
它只是一个保存checked
复选框状态的变量。我也可以这样写:
var logoCheckbox = document.getElementById('logoCheckboxId');
var logoCheckboxIsChecked = logoCheckbox.checked;
回答您的其他问题(“Javascript 中是否存在 isChecked 函数”):
JavaScript中没有isChecked
函数(据我所知),但如果你愿意,你可以做一个。下面是一个简单的isChecked
函数示例:
// simplified example
var isChecked = function isChecked(elem) {
var checked = false;
if (elem.checked !== undefined)
checked = elem.checked;
}
return checked;
};
使用示例:
var dataString = '&header' + header
+ isChecked(document.getElementById('logoCheckboxId')) ? '&logo' + logo : '',
+ '&body' + body;
var dataString = '&header' + header;
if (document.getElementById('id_of_logo_checkbox').checked)
{
dataString += '&logo' + logo;
}
dataString += '&body' + body;
if(document.getElementById('checkid').checked == true)
dataString += logo;
var dataString = "...";
if(document.getElementById('checkid').checked = true;
{
dataString += logo;
}
//...code