私は html フォームで選択を使用しています。ユーザーが選択オプションから選択すると、javascript によってサーバーに送信されます。サーバーに送信されたフォームでテキストを取得できますが、選択を使用するとサーバーに何も送信されません。これは私のコードです:
{% extends "base.html" %}
{% import "forms.html" as forms %}
{% block header %}
<script>
$(document).ready(function() {
var ws;
$("#open").click(function(evt){
evt.preventDefault();
$.post("/", $("#eventForm.").serialize());
ws = new WebSocket("ws://" + "localhost" + ":" + "8888" + "/ws");
ws.onmessage = function(evt){
$("#display").append(evt.data + "<br />");
};
ws.onclose = function(evt) {alert("Server connection terminated");};
});
});
</script>
<div class="page-header">
<h1>Welcome</h1>
</div>
{% end %}
{% block body %}
<h2>Enter the Event you would like to follow</h2>
<form id ="eventForm" action="/" method="post">
<select name="aaaa" multiple="multiple">
<option value="" selected="selected"></option>
<option VALUE="abc"> ABC</option>
<option VALUE="def"> def</option>
<option VALUE="hij"> hij</option>
</select>
<!-- <input type="text" name="event" /> -->
<input type="submit" id="open" value="Submit Query" />
</form>
<h1>Coordinates</h1>
<div style="height:500px; width:700px; border:2px solid #ccc; overflow:auto; margin:0 auto;" id="display"></div>
{% end %}
$.post("/", $("#eventForm.").serialize()); と思った select は form タグ内にあるため、選択したオプションを送信します。
私はhtmlとjavascriptにあまり慣れていません。
ありがとう