I am trying to get and post data from a listbox using the onchange= but i get the error Reference Error: Cant find variable: getMessage getMessage is the name of function that contains the ajax get and post and I'm gessueing it means that it can't find the function for some reason. does anyone know why? my code is shown below.
<script type="text/javascript">
function getMessage() {
var data = { message : {$("#messageselect").val(); }};
$.ajax({
url: "/message",
type: "GET",
data: JSON.stringify(data),
dataType: 'jsonp'
})
$.ajax({
url: "/message",
type: "POST",
dataType: 'json',
contentType: 'application/json',
success: function(data) {
console.log(data);
}
error : function(err) {
console.log("error fetching message");
}
});
}
</script>
server:
app.post('/message', function(req, res) {
console.log(JSON.stringify(req.body));
Message.findOne({ 'page.message' : req.data }, function(err, message) {
if(err){
throw err;
}
res.send(message);
});
});
html:
<form method="POST">
<select multiple="multiple" class="messageselect" onchange="getMessage()" id="messageselect">
<% if(message) { %>
<% for(i=messagecount-1;i>=0;i--) { %>
<option value="<%= message[i].page.message %>">
From: <%= message[i].page.username %>
Message: <%= message[i].page.messagetitle %>
</option>
<% } %>
<% } %>
</select><br><br><br>
</form>