Browser.ExecJS javascript function return JSON for Array

Get help using Construct 2

Post » Fri Jun 06, 2014 2:41 pm

Trying to run a Javascript function I have added into the body of the index.html to return a JSON string I can add into an Array inside of Construct2.

code.png


Here is the javascript I add in the body of index.html:
Code: Select all
<script type="text/javascript">
      function gameJSON()
      {
         var myGameJSON =  <cfoutput>#myJsonVar#</cfoutput>;
         return myGameJSON;
      }
   </script>


This code functions in the browser console and returns a correct JSON to the browser console. I also know it gets called in construct2 because I have added an alert and I have am seeing the alert.

I have looked at the input from Browser.ExecJS("gameJSON();") by appending it to a text string and the value is just = "0".

Questions:
1. Can I use Browser.ExecJS to request a JSON string and then use that to load to my "ArrayInfo"?
2. Is there a better method to reference a Javascript function on index.html accessed via the Browser object and get the JSON inside construct2?

Any help is greatly appreciated.
You do not have the required permissions to view the files attached to this post.
B
3
Posts: 2
Reputation: 179

Post » Fri Jun 06, 2014 4:11 pm

1. ExecJS can only return strings or numbers, so make sure the JSON is stringified and not a raw JS object.

2. I would strongly recommend always using the Javascript SDK instead of executing JS strings directly.
Scirra Founder
B
398
S
236
G
88
Posts: 24,428
Reputation: 194,600


Return to How do I....?

Who is online

Users browsing this forum: No registered users and 13 guests