複数選択ボックスがあり、選択したデータに JavaScript でアクセスしたいと考えています。コードは次のとおりです。
<form onsubmit="return false;" id="multisel">
<select name="a[]" id="a" multiple style="width:350px;" tabindex="4">
<option value="Pedro">1</option>
<option value="Alexis">2</option>
<option value="Messi">3</option>
<option value="Villa">4</option>
<option value="Andres">5</option>
<option value="Sergio">6</option>
<option value="Xavi">7</option>
</select>
<button id="btn1" onclick="ajaxmultiselect()" type="submit" class="btn btn-primary">Save changes</button>
<p id="status"></p>
</form>
これまでに試したコードは次のとおりです。
<script>
function ajaxmultiselect(){
var input = [];
input = document.getElementById("a").value;
var status = _("status");
if(input == ""){
status.innerHTML = "Fill out all of the form data";
}else {
status.innerHTML = input;
}
}
</script>
コードを実行すると、最初の値のみが返されます。PHPで値にアクセスしようとしましたが、正常に動作し、値をphpの配列として渡します。javascriptで同じことをしないのはなぜですか?
また、値の長さのループを実行しようとしましたが、最初の選択の長さのみを計算します。選択されるすべての値を表示したい。
どんな助けでも大歓迎です。