LimeSurvey在复制Survey时发生QID更改问题

时间:2015-11-26 22:39:48

标签: php html css limesurvey

有人知道在LimeSurvey中复制Survey时保持QID不变的方法。我正在将调查从开发服务器复制到生产服务器,并编辑了模板css以执行许多特定的操作。例如,我有特定问题ID(QID)的自定义CSS,以便在该特定问题中不显示某些数字或标题。

当我将调查问卷转移到生产服务器时,QID会发生变化,我的自定义CSS不适用于调查的相同内容。有没有人知道将所有原始信息从一个调查完全转移到另一个调查的方法?如果没有,是否有人知道自定义CSS的替代方法,它将在复制的调查之间普遍起作用?

以下是一个例子:

#slider-844755X43X297SQ001 .slider_callout {
display: none;}
#question87_warning {display:none}

当我复制调查时,问题可能会显示为#question155 ,而不是#question87 。这里的任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

在导入时无法避免更改QID。这是一个序号,因此取决于新服务器上已创建的问题数量。

我建议使用JavaScript将一个类应用于该问题,然后从template.css中定位该类。

所以,问题的HTML源代码中有这样的内容:

<script type="text/javascript" charset="utf-8"> $(document).ready(function(){ $('#question{QID}).addClass(with-no-callout); }); </script>

然后在template.css中这样的事情:

.with-no-callout .slider_callout { display: none; }

答案 1 :(得分:1)

没有javascript的替代解决方案:

  1. 设置您的调查以显示问题代码https://manual.limesurvey.org/Survey_settings#Presentation_.26_navigation
  2. 更新question.pstpl以将{QUESTION_CODE}添加到问题类
  3. 在template.css中使用此类,您也可以使用qcode- {QUESTION_CODE}作为类等...
  4. 您可以使用{QUESTION_NUMBER}
  5. 进行相同的思考

    <div {QUESTION_ESSENTIALS} class="question-wrapper {QUESTION_CLASS}{QUESTION_MAN_CLASS}{QUESTION_INPUT_ERROR_CLASS} qcode{QUESTION_CODE}{if(!is_empty(QUESTION_MANDATORY)," required","")}{if(is_empty(QUESTIONHELP)," nohelp","")}">

    例如和更多系统(必需和无帮助)。取自https://git.framasoft.org/Shnoulle/SkeletonQuest/blob/master/question.pstpl#L1