以前是这样的,我想改成下拉列表的,
但改来改去改成了这样

那位大哥能教我到底才能改好啊
源代码:
//生成层内内容
  newDiv.innerHTML = '<h4 style="font-size:14; margin:15 0 0 15;">' + select_spe + "</h4>";  for (var spec = 0; spec < message.length; spec++)
  {
      newDiv.innerHTML += '<hr style="color: #EBEBED; height:1px;"><h6 style="text-align:left; background:#ffffff; margin-left:15px;">' +  message[spec]['name'] + '</h6>';      if (message[spec]['attr_type'] == 1)
      {
        for (var val_arr = 0; val_arr < message[spec]['values'].length; val_arr++)
        {
          if (val_arr == 0)
          {
            newDiv.innerHTML += "<input style='margin-left:15px;' type='radio' name='spec_" + message[spec]['attr_id'] + "' value='" + message[spec]['values'][val_arr]['id'] + "' id='spec_value_" + message[spec]['values'][val_arr]['id'] + "' checked /><font color=#555555>" + message[spec]['values'][val_arr]['label'] + '</font> [' + message[spec]['values'][val_arr]['format_price'] + ']</font><br />';      
          }
          else
          {
            newDiv.innerHTML += "<input style='margin-left:15px;' type='radio' name='spec_" + message[spec]['attr_id'] + "' value='" + message[spec]['values'][val_arr]['id'] + "' id='spec_value_" + message[spec]['values'][val_arr]['id'] + "' /><font color=#555555>" + message[spec]['values'][val_arr]['label'] + '</font> [' + message[spec]['values'][val_arr]['format_price'] + ']</font><br />';      
          }
        } 
        newDiv.innerHTML += "<input type='hidden' name='spec_list' value='" + val_arr + "' />";
      }
      else
      {
        for (var val_arr = 0; val_arr < message[spec]['values'].length; val_arr++)
        {
          newDiv.innerHTML += "<input style='margin-left:15px;' type='checkbox' name='spec_" + message[spec]['attr_id'] + "' value='" + message[spec]['values'][val_arr]['id'] + "' id='spec_value_" + message[spec]['values'][val_arr]['id'] + "' /><font color=#555555>" + message[spec]['values'][val_arr]['label'] + ' [' + message[spec]['values'][val_arr]['format_price'] + ']</font><br />';     
        }
        newDiv.innerHTML += "<input type='hidden' name='spec_list' value='" + val_arr + "' />";
      }
  }
  newDiv.innerHTML += "<br /><center>[<a href='javascript:submit_div(" + goods_id + "," + parent + ")' class='f6' >" + btn_buy + "</a>]&nbsp;&nbsp;[<a href='javascript:cancel_div()' class='f6' >" + is_cancel + "</a>]</center>";
  document.body.appendChild(newDiv);

解决方案 »

  1.   

    太长。。没找到哪生成的select
    反正找到循环生成select的部分,改成一个select,再循环添加option就行了
      

  2.   

     
      newDiv.innerHTML = '<h4 style="font-size:14; margin:15 0 0 15;">' + select_spe + "</h4>";  for (var spec = 0; spec < message.length; spec++)
      {
          newDiv.innerHTML += '<hr style="color: #EBEBED; height:1px;"><h6 style="text-align:left; background:#ffffff; margin-left:15px;">' +  message[spec]['name'] + '</h6>';      if (message[spec]['attr_type'] == 1)
          {
            newDiv.innerHTML += "<select>"
    for (var val_arr = 0; val_arr < message[spec]['values'].length; val_arr++)
            {
              if (val_arr == 0)
              {
                newDiv.innerHTML += "<option value='" + message[spec]['values'][val_arr]['id'] + "' selected>" + message[spec]['values'][val_arr]['label'] + "</option>";   
              }
              else
              {
        newDiv.innerHTML += "<option value='" + message[spec]['values'][val_arr]['id'] + "'>" + message[spec]['values'][val_arr]['label'] + "</option>";
              }
            } 
    newDiv.innerHTML += "</select>"
            newDiv.innerHTML += "<input type='hidden' name='spec_list' value='" + val_arr + "' />";
          }
          else
          {
            for (var val_arr = 0; val_arr < message[spec]['values'].length; val_arr++)
            {
              newDiv.innerHTML += "<input style='margin-left:15px;' type='checkbox' name='spec_" + message[spec]['attr_id'] + "' value='" + message[spec]['values'][val_arr]['id'] + "' id='spec_value_" + message[spec]['values'][val_arr]['id'] + "' /><font color=#555555>" + message[spec]['values'][val_arr]['label'] + ' [' + message[spec]['values'][val_arr]['format_price'] + ']</font><br />';     
            }
            newDiv.innerHTML += "<input type='hidden' name='spec_list' value='" + val_arr + "' />";
          }
      }
      newDiv.innerHTML += "<br /><center>[<a href='javascript:submit_div(" + goods_id + "," + parent + ")' class='f6' >" + btn_buy + "</a>]&nbsp;&nbsp;[<a href='javascript:cancel_div()' class='f6' >" + is_cancel + "</a>]</center>";
      document.body.appendChild(newDiv);
      

  3.   

    你生成颜色的应该是4个<input type="radio" 这样的单选框控件,  你可以不用input标签,改用一个select标签 4个option标签 将你所需内容写进去<select name="" >
       <option value="蓝色">蓝色
       <option value="灰色">灰色
       <option value="金色">金色
       <option value="黑色">黑色
    </select>
    这样就是一个下拉框 里面有四个选项了