Jquery ..我想在我的搜索结果中搜索

时间:2014-06-10 08:27:39

标签: jquery

我有一个网页,我可以选中复选框。现在我想做的是使用id来选择上面选择中的复选框,我使用this.id.但没有运气。不知道我在哪里错了。这是我的功能。

function GetSelectedChks()
{
    var doc = document.forms["form1"];
    var valarr=[];
    var ids = "";
    var selIndexes = "";
    $(":checked").each(function(index)
    {   
        if(this.name=='selChk' && ids!=this.id)
        {
            ids = this.id;
            $(eval('#"+ids+"')).each(function(index1){selIndexes=selIndexes+"-"+this.value});
            valarr.push(ids+"~"+selIndexes);
            selIndexes = "";
        }
    });
    doc.selChk.value = valarr;
}

1 个答案:

答案 0 :(得分:0)

我想建议不要使用混合js / jquery,一切都可以用js或jquery本身。

你的问题不清楚你的目标是什么。根据我的理解,您试图在1个字段中获取所有选中的复选框。但我不明白为什么你再次把它放在你的复选框值中。

无论如何,请找到我试图达到我想要达到的目标的小提琴代码。演示:http://jsfiddle.net/gZZF3/

HTML:

<form name="form1">
    <input type="checkbox" id="1" name="selChk" value="test 1"  /> test 1
    <input type="checkbox" id="2" name="selChk" value="test 2" />test 2
    <input type="checkbox" id="3" value="test 3"  />test 3
    <input type="checkbox" id="4" value="test 4"/>test 4
    <input type="hidden" value="" />
</form>

JS:

function GetSelectedChks() {
    var doc = document.forms["form1"];
    var valarr=[];
    var ids = "";
    var selIndexes = "";
    $(":checked").each(function(index)
    {   
        if(this.name=='selChk' && ids!=this.id)
        {
            ids = this.id;
            $('#'+ids).each(function(index1){
                selIndexes=selIndexes+"-"+this.value
            });
            valarr.push(ids+"~"+selIndexes);
            selIndexes = "";
         }

    });

    $('input[type="hidden"]').val(valarr);
}
$('input').click(function(){
    GetSelectedChks();
    alert ($('input[type="hidden"]').val());
});