javascript - JavaScript 函数的目标数组

标签 javascript jquery arrays

我想知道;如何向此脚本添加目标数组?

$(document).ready(function () {

$('#kategorierbuttons').click(function(e)
{
   var num = $(e.target).index() + 1;
   $('option:nth-child(' + num + ')', '#kategorier_content1').attr('selected', 'selected');
});
});

其中“#kategorier_content1”是函数的目标,它是调用函数时发生变化的内容。我想将更多目标配对(例如,它们以完全相同的方式更改)更多目标到该函数中,即(非功能脚本仅用于演示我想要的要点):

$(document).ready(function () {

$('#kategorierbuttons').click(function(e)
{
   var num = $(e.target).index() + 1;
   $('option:nth-child(' + num + ')', '#kategorier_content1', '#kategorier_content2').attr('selected', 'selected');
});
});

不幸的是,我对 javascript 的了解并不多,无法涵盖这一点,因此我寻求帮助。任何帮助将不胜感激。

这是一个 fiddle :http://jsfiddle.net/SEqZG/46/

目标是让两个下拉菜单根据功能表现相同,而不仅仅是顶部菜单。

最佳答案

您应该为每次点击更改这两个选项。

像这样:

$(document).ready(function () {
    $('#kategorierbuttons').click(function(e)
    {
        var num = $(e.target).index() + 1;
        $('option:nth-child(' + num + ')', '#kategorier_content1').attr('selected', 'selected');
        $('option:nth-child(' + num + ')', '#kategorier_content2').attr('selected', 'selected'); //One extra line, but what if there are many?
    });
});

<强> DEMO

但是,如果您的数组的元素以 id 开头,该怎么办?

然后您必须使用此选择器选择元素:

element_type[attribute^="value"]

阅读此处: Attribute Starts With Selector

然后你可以这样做:

$(document).ready(function () {
    $('#kategorierbuttons').click(function(e)
    {
        var num = $(e.target).index() + 1;
        $('select[id^="kategorier_content"]').find('option:nth-child(' + num + ')').attr('selected', 'selected');
    });
});

<强> DEMO

关于javascript - JavaScript 函数的目标数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24783092/

相关文章:

javascript - 单选按钮/复选框未使用 AJAX 输入 MySQL DB

java - 如何在Arraylist java中通过ID号搜索并显示对象?

c - bool 数组的排列

javascript - 如何在页面转换时生成 gif 动画?

javascript - 将图像存储在 chrome 扩展中

javascript - 简化 JavaScript 代码

javascript - 点击谷歌地图移动标记

javascript - jQuery .empty() 与 iframe,其 src 是 Internet Explorer 中的 pdf 中断插件

jquery - 有没有办法选择与字符串同名的对象

Javascript 如何将数组与另一个数组添加到新数组中?