このフィドルはコードの完全なセットではありません。しかし、私が問題を抱えているのは分離されたコードです。
これは IE のすべてのバージョンで機能しますが、Safari/Chrome では機能しません。具体的には、これを IPAD で動作させようとしています。選択ボタンが押され、関数は何もせず、基本的にそこにとどまります...誰か提案はありますか?
function selectStatements(f)
{
var selectedArray = new Array();
var selObj = document.getElementById('statementGroups');
var i = 1;
var count = 0;
for (i=0; i<selObj.options.length; i++)
{
if ( (selObj.options[i].selected) && count<20 )
{
selectedArray[count] = selObj.options[i].value;
count ++;
}
}
f.chosenStatements.value = selectedArray;
document.glStatementForm.glaction.value = "updateChosenList";
document.glStatementForm.action="glstsend.shtml";
document.glStatementForm.method="POST";
document.glStatementForm.submit();
}
</script>
HTML:
#IF EXPR = (clientState == "setList") -->
<div id="openBox2">
<tr>
<td VALIGN="top"><B>Statements:</B>
<td VALIGN="top">
<SELECT NAME="statementGroups" SIZE=10 MULTIPLE> <!--
#SET NAME = ldx VALUE = 0 --><!--
#WHILE EXPR=(ldx < disp_list_count) -->
<OPTION VALUE= "(*disp_dropdown_value[ldx]*)">(*disp_dropdown_text[ldx]*) <!--
#SET NAME = ldx VALUE = ldx + 1 --><!--
#ENDWHILE -->
</SELECT>
<tr>
<td> <BR />
<td> <INPUT TYPE=BUTTON VALUE="Select" STYLE="font:8pt Arial" ONCLICK="selectStatements(this.form);">
<!--
#ENDIF -->
</table>
</div>