Ik probeer vanuit JavaScript via een Qt webkit bridge een C++ object te bedienen. De webkit bridge is functioneel, maar ik krijg vanuit een drag 'n drop niet de juiste informatie door.
De aanroep naar de betreffende methode gaat goed, alleen krijg ik ipv een IP adres, de string "1" door. Na inspectie blijkt het IP adres wel in het geheugen te staan (met 4 bytes per character, gezien een IP adres denk ik aan UTF-32). Alerts binnen de JS omgeving retourneren wel het juiste IP adres.
Als ik een variable het IP adres geef en die pass krijg ik wel de juiste informatie binnen.
Het lijkt dus een issue te zijn vanuit mijn dataTransfer object. Maar wat dan exact?
Er een string van maken als in String(e.dataTransfer.getData('text')) en e.dataTransfer.getData('text').toString() werken niet - geven hetzelfde resultaat.
De aanroep naar de betreffende methode gaat goed, alleen krijg ik ipv een IP adres, de string "1" door. Na inspectie blijkt het IP adres wel in het geheugen te staan (met 4 bytes per character, gezien een IP adres denk ik aan UTF-32). Alerts binnen de JS omgeving retourneren wel het juiste IP adres.
Als ik een variable het IP adres geef en die pass krijg ik wel de juiste informatie binnen.
Het lijkt dus een issue te zijn vanuit mijn dataTransfer object. Maar wat dan exact?
Er een string van maken als in String(e.dataTransfer.getData('text')) en e.dataTransfer.getData('text').toString() werken niet - geven hetzelfde resultaat.
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
| function handleDrop(e) { if (e.preventDefault) { e.preventDefault(); // prevent default behaviour (navigating to the link) } if (e.dataTransfer) { var url = e.dataTransfer.getData('text'); alert(url); // <-- Geeft correct url weer device.view = url; // <-- Geeft "1" door in C++ methode //var str = '10.10.183.93'; //device.view = str; // <-- Werkt } |