Gibts für Javascript auch so eine nl2br-Funktion wie in PHP o.ä.?
Nein, zumal du dann das Problem hast, die per Funktion erzeugten <br /> von jenen zu unterschieden, die der Benutzer eingegeben hat ("passiert schon nicht" zählt nicht).
var senddata = 'p_id='+p_id
+'&det_id='+det_id
+'&name='+name
+'&message='+message
+'&emailaddress='+emailaddress;
Du solltest es mit encodeURIComponent() probieren, und zwar bei _allen_ Daten, die du da zusammenbastelst. Überlege dir mal, was passiert, wenn ein Benutzer irgendwo, sei es im Namen oder in der Nachricht, ein Und- oder Gleichheitszeichen eingibt.