2016-12-15 14 views
0

我有这段代码的问题:选项值:选择一个,输出多种

<FORM NAME=formname> 
<SELECT NAME=name1 onchange=results(1)> 
<Option VALUE="" selected>Select one: 
<Option VALUE="OPTION A">OPTION A 
<Option VALUE="OPTION B">OPTION B 
<Option VALUE="OPTION C">OPTION C</SELECT> 
<SELECT NAME=name2 onchange=results(1)> 
<Option VALUE="" selected>Select one: 
<Option VALUE="OPTION D">OPTION D 
<Option VALUE="OPTION E">OPTION E 
<Option VALUE="OPTION F">OPTION F</SELECT> 

,它可以让我建立了种类繁多的主题句,如果我补充足够的变量。

结果将显示在这里:

<TEXTAREA NAME=textarea COLS=110 ROWS=7>[Selected description shows up here]</TEXTAREA></FORM> 

凭借此javascript:

<SCRIPT LANGUAGE=JAVASCRIPT TYPE="TEXT/JAVASCRIPT"> 
function results(s_option) 
{ with (document.forms["formname"]) 
{ if (name1.value != 'blank') 
{ textarea.value = name1.value + name2.value ;} 
} 
} 
</SCRIPT> 

我想添加多个选项值,并第textarea的显示所有第一的价值观,和第二个框显示所有第二个值。

当我迷路了:

<Option VALUE="OPTION A">OPTION A 

有没有办法做同样的事情到

<Option VALUE="OPTION A1 | OPTION A2 | OPTION A3 | OPTION A4">OPTION A 

而且有四种文字区域,每一个显示自己的选项A版(A1 ,A2,A3,A4)放入每个文本区,全部只选择“选项A”?

+0

使用JSON对象{} –

+0

您可以将该值设置为您希望他们要在文本区域 –

+0

显示我真的不是很在所有的JavaScript良好的,任何人都可以请给我一个解决方案,会帮助我更好地理解?我不能在这里连接点。 – IsaR

回答

1

您可以使用split()方法来分割值。

$("select").change(function() { 
    var option1 = $("select[name=name1]").val().split(" | "); 
    var option2 = $("select[name=name1]").val().split(" | "); 
    var limit = Math.max(option1.length, option2.length); 
    for (var i = 0; i < limit; i++) { 
     var val1 = i < option1.length ? option1[i] : ''; 
     var val2 = i < option2.length ? option2[i] : ''; 
     $("textarea").eq(i).val(val1 + val2); 
    } 
});