调用两组复选框所产生的计数功能。第一组代表类别,当列出该类别的点击主题时。
html:id:counter显示计数值。 id:select依次替换文本
<div class="small-8 text-left columns" style="left:-30px;">
<span id="counter"><span id="count">0</span></span>
<span id="select">Select Subjects</span>
</div>
脚本:(类别组)为ajax提取的主题传递值。 updateCount();is the count function call.
$("input[type=checkbox][id^=level]").change(function() {
var selectedval = $(this).val();
if($(this).is(":checked")) {
var selectedtext = $(this).next().text();
sendtobox(selectedval, $("#slider1").val(),"regis");
} else {
$("th."+selectedval).remove();
updateCount();
}
});
(科目组)
$(document).on('change', '[id^=sub][type=checkbox]', updateCount);
计数功能:
function updateCount () {
$('#count').text($('[id^=sub][type=checkbox]:checked').length);
}
替换文字的脚本:
$(".close-reveal-modal").on("click",function()
{
document.getElementById("select").innerHTML = "Select subject";
var str = document.getElementById("select").innerHTML;
var res = str.replace("Select subject", "Selected Subject");
document.getElementById("select").innerHTML = res;
});
现在我可以替换文字了,计数工作得很好!我的问题是它不遵守英语语法!
如果返回0个项目/主题,则文本应为0选定主题,如果选中大于1,则应该说明相同。请参阅“主题”一词中必须添加的内容。
我的问题是,我无法确定替换此文本的计数数量。
我想要这样:
if ($("#count") >1 || ($("#count")==0))
{
var res = str.replace("Select subject", "**Selected Subjects"**);
document.getElementById("select").innerHTML = res;
}
else
{
var res = str.replace("Select subject", "**Selected Subject"**);
document.getElementById("select").innerHTML = res;
}
我试图提醒$('#count')。长度,每次选中复选框时都会像这样红色:
1 1 1 1
我期待的是
1 - 点击一次
2 - 点击两次
这种方式对我来说更容易替换文本!
答案 0 :(得分:1)
听起来你想要这个比较的id为'count'的跨度的TEXT:
if ($("#count").text() == "1") {
// singular
}
else {
// plural
}