Add missing parantheses and allow empty ajax.data

I use select2's ajax function to get a list for autocompletion. However I'm not sending json to the server, the query is only in the url, hence I don't need data in 

`ajax:{ url:...., data: function(){...}, ....}`

when I emit data, I get an error because select2 goes `data.call(...` somewhere on line 315 or so.

My change allows data to be empty, which is set to null in the script if data is undefined.

I think it's a common use-case to not send json when doing simple queries, so having data empty should be allowed...

Please :)