Reputation: 73
I've got a page with a number of fields, not in a form setup because I wanna be able to act on them individually and post with ajax. I am using Go to process the post data. However, it seems to post multiple times because in my Go code I am outputting a post variable to the console to test, and it dumps the output 5 times, which represents the number of variables in the post data. I also had this type of behavior when I just used a jquery alert to show the post data. Am I misunderstanding something about how ajax posts, or is there some other bug going on?
func addProduct(w http.ResponseWriter, r *http.Request, p httprouter.Params) {
frmCategory:=r.PostFormValue("category")
fmt.Println(frmCategory)
}
func main() {
router:=httprouter.New()
router.POST("/addProduct",addProduct)
}
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" type="text/css">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js" type="text/javascript"></script>
<!-- <script src="http://code.jquery.com/jquery-1.4.1.min.js"></script> -->
<link rel="stylesheet" type="text/css" href="//netdna.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
<link href="//netdna.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel='stylesheet' type='text/css'>
var postData="bcode\="+ $('#bCodeID').val()+"&category\="+$("#selected_category").val()+"&price\="+priceModifier+"&description\="+$('#itemDescription').val()+"&colorcode\="+$('#SelectedColorCode').val();
$.ajax({
url: '/addProduct',
type: 'post',
dataType: 'text',
data : postData,
success : function(data) {
$('#warningBox').modal({
show: false
});
}
});
Toys
Toys
Toys
Toys
Toys
Toys
Toys
Upvotes: 0
Views: 3067
Reputation: 73
I found the bug. Earlier I was experimenting with not allowing clicks outside of a modal dialog, and was using $(document).click(function () { ... } wrapped around all my jscript code. Once I removed that, everything else fixed itself.
Upvotes: 1