2014-01-08 32 views
0

我正在添加产品详细信息。 因此,为此,我必须添加产品属性,产品功能。如何动态更改列表(选择)数据

我从mysql表中加载属性的所有数据。

我正在使用一种机制,第一个用户必须从列表(选择控件)中选择属性类别,当用户选择类别时,然后根据其他列表(选择控件)的数据更改。

主要类别图像:

category main

子属性类别:

sub category

我在JavaScript数组中加入这样的数据:

var at_category_id = []; 
var at_category_name = []; 

<% 
    List<Integer> aIDList = (List<Integer>) request.getAttribute("aID"); 
    List<String> aNAMEList = (List<String>) request.getAttribute("aNAME"); 

    for (int i = 0; i < aIDList.size(); i++) 
    { 
    %> 
     at_category_id.push(<%= aIDList.get(i) %>); 
     at_category_name.push(<%= aNAMEList.get(i) %>); 
    <% 
    } 
%> 

var option_str = document.getElementById('list_main_category'); 

    for (var i=0; i<at_category_id.length; i++) 
    { 
     option_str.options[option_str.length] = new Option(at_category_id[i],at_category_name[i]); 
    } 

我已经做了类似这样的属性,并将数据添加到JavaScript数组。

var at_id = []; 
var at_name = []; 

<% 
    List<Integer> acIDList = (List<Integer>) request.getAttribute("acID"); 
    List<String> acNAMEList = (List<String>) request.getAttribute("acNAME"); 

    for (int i = 0; i < aIDList.size(); i++) 
    { 
    %> 
     at_id.push(<%= acIDList.get(i) %>); 
     at_name.push(<%= acNAMEList.get(i) %>); 
    <% 
    } 
%> 

但现在如何前进我不知道。

我想做那样的事情。

enter image description here

首先意味着名单上时用户点击被主类别如何第二列表将被改变?

请提出任何建议。

回答

0

通常的做法是在第一个组合框的值变化上加上一个javascript动作。

在这一点上,你可以(简单的方式)提交整个表单,然后发送带有额外附加值的新页面,或者(稍微复杂一点)执行AJAX调用来获取数据并填充新的下拉菜单。

+0

我知道先生在onchange ='functionName()'上调用函数。但如果我会得到简单的例子,那对我来说会更好。因为我没有足够的JavaScript知识。 –

+0

+0

(这是在春天,对于标准选择只是使用onchange而忽略其余) –