我正在尝试使用xml / html设计布局和python在Amazon MTurk Sandbox中创建一个简单的HIT(创建来自MTurk的两个教程)。但是,每当我以工人的身份前往HIT并尝试提交时,都会收到以下答复:“为该HIT提交结果时出现了问题。”我经历了多个论坛,并相应地更改了许多内容,但仍得到相同的结果。
任何建议都会很棒!我要做的只是一个简单的任务,以了解使用MTurk的乐趣,而其他一切似乎都可以正常工作并显示正常。
这是我提交的代码:
<p><input type="submit" id="submitButton" name="commit" value="Complete HIT"/></p></form>
<script language='Javascript'>turkSetAssignmentID();,</script>
这是我之前填写表格的代码:
<form name='mturk_form' method='post' id='mturk_form' action='https://www.mturk.com/mturk/externalSubmit'><input type='hidden' value='' name='assignmentId' id='assignmentId'/>
答案 0 :(得分:0)
我看到了可能是问题的两件事:
,
之后有一个turkSetAssignmentID()
,这是JavaScript语法错误。这会阻止代码运行,并阻止函数为表单设置正确的端点,从而导致错误。<script type='text/javascript' src='https://s3.amazonaws.com/mturk-public/externalHIT_v1.js'></script>
标记中执行<head>
。这告诉浏览器获取一个帮助脚本,该脚本是在turkSetAssignmentID()
函数中定义的。如果您解决了这些问题,它应该可以工作。这是一个完整的示例:
<?xml version="1.0" standalone="no" ?>
<HTMLQuestion xmlns="http://mechanicalturk.amazonaws.com/AWSMechanicalTurkDataSchemas/2011-11-11/HTMLQuestion.xsd">
<HTMLContent><![CDATA[
<!DOCTYPE html>
<html>
<head>
<script type='text/javascript' src='https://s3.amazonaws.com/mturk-public/externalHIT_v1.js'></script>
</head>
<body>
<form name='mturk_form' method='post' id='mturk_form' action='https://www.mturk.com/mturk/externalSubmit'><input type='hidden' value='' name='assignmentId' id='assignmentId'/>
<p><input type="submit" id="submitButton" name="commit" value="Complete HIT"/></p></form>
<script language='Javascript'>turkSetAssignmentID();</script>
</body>
</html>
]]>
</HTMLContent>
<FrameHeight>0</FrameHeight>
</HTMLQuestion>
使用更少的代码来更轻松地实现此目标的方法是使用Crowd HTML Elements。您不必做太多的<script>
标签,并提供了功能强大的小部件,例如边界框和表单验证。
<?xml version="1.0" standalone="no" ?>
<HTMLQuestion xmlns="http://mechanicalturk.amazonaws.com/AWSMechanicalTurkDataSchemas/2011-11-11/HTMLQuestion.xsd">
<HTMLContent><![CDATA[
<!DOCTYPE html>
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
<!-- form contents goes here -->
</crowd-form>
</html>
]]>
</HTMLContent>
<FrameHeight>0</FrameHeight>
</HTMLQuestion>