This is possibly a bug with the JSON object.
If you run in to a bug or issue in Construct 3, please post it to the GitHub issue tracker here:
https://github.com/Scirra/Construct-3-bugs
You must follow the bug report guidelines or your issue will be closed without investigation.
Construct is a great product, but as far as the bug reporting goes the customer experience is not so great.
Customers shouldn't be expected to deal with issue creation, refinement, maintenance and demanding responses from engineers who think that issues needs further refinement or be split up into additional issues.
And like, threatening with "having my issue closed without investigation" unless I jump through all these hoops is not exactly going to entice me to want to submit bugs.
> You need to remove "Append JSON.Get("books.title") (i.e. line #3) for the "Else"-case (i.e. line #4) to fire.
Nope, without this action it still works correctly for me. The Else event is not fired if the key exists in JSON.
https://www.dropbox.com/s/2x9jtliyiud772n/JSON_HasKey.c3p?dl=0
Sorry, I just noticed that you had an AJAX-related trigger. It needs to be a continuous loop that checks for "Has key" on every loop.
If you put your two sub-conditions on root level so that they run on every loop then it should work. :-)
Thank you very much for the help so far!