有没有办法为数据流生成javascript或伪代码?

有没有办法为数据流生成javascript或伪代码?,javascript,if-statement,code-generation,nested-loops,flow,Javascript,If Statement,Code Generation,Nested Loops,Flow,我有一个web表单,用户通过下拉列表回答问题,我希望根据他们的回答提供其他问题 e、 如果你的公司有营业场所,那么询问营业时间。如果没有,则显示其运营的地区 随着我向流程中添加的每个问题,代码变得越复杂。很多if/then函数并不总是有相互排斥的答案 虽然每个用户可能只需要回答5-10个问题,但可能的问题数量可以是100+ 是否有一种简单的方法可以生成Javascript/PHP或至少是伪代码,让您可以绘制一条通过所有可用答案的路径,并为您生成相关的嵌套if/then语句 示例:根据前面的答案猜

我有一个web表单,用户通过下拉列表回答问题,我希望根据他们的回答提供其他问题

e、 如果你的公司有营业场所,那么询问营业时间。如果没有,则显示其运营的地区

随着我向流程中添加的每个问题,代码变得越复杂。很多if/then函数并不总是有相互排斥的答案

虽然每个用户可能只需要回答5-10个问题,但可能的问题数量可以是100+

是否有一种简单的方法可以生成Javascript/PHP或至少是伪代码,让您可以绘制一条通过所有可用答案的路径,并为您生成相关的嵌套if/then语句

示例:根据前面的答案猜测电视角色

在预期某些回答时,当然该页面没有
编码,以便所有问题都在一个页面上得到回答,但我想知道这是否至少是可能的


提前谢谢。我希望你们都喜欢WWDC;)

我不考虑生成大量代码,而是考虑避免大量代码

如果您已经列出了所有可能的问题,并且您知道哪些是“开始”问题,那么您需要知道的是:

  • 问题(案文)
  • 问题的“名称”;换句话说,在你积累答案的过程中,有一些关键的簿记方法
  • 可能的答案(“是”/“否”或选项列表)
  • 对于每个可能的答案,下一个问题的身份

这样,您只需要一段代码,知道如何提出问题并根据答案采取行动。当它从用户那里得到答案时,它应该将答案累积到一个列表中。您甚至可以提供一个导航方案,允许用户向后移动。

您可以在包含所有规则的页面上设置一个json对象,并在每个元素上设置一个与json对象对应的id/属性。然后在更改时,检查json对象是否有对应于“change”元素属性的“trigger”节点,然后根据该值查找应该隐藏/显示的所有元素。请注意,这段代码非常粗糙,不是一个确切的答案,但足以让您开始

<select id='q1' onchange='handleHideShow(this)'></select>
<select id='q2' onchange='handleHideShow(this)'></select>

function handleHideShow(el)
{
    var elValue = el.value;
    if(hsObj[el.id])
    {
       var rules = hsObj[el.id].rules;
       for(var r = 0; r < rules.length; r++)
       {
           var rRule = rules[r];
           for(var t in rRule) 
           { 
               var showEl = document.getElementById(rRule[t]);
               if(showEl)
               {
                    var hideVal = "";
                    if(elValue != t)
                    {
                        hideVal = 'none';
                    }
                    showEl.styles.display = hideVal;
                }
            }
        }
    }               
}
var hsObj = [
   "q1":{"Yes":"q2"}
];

函数handleHideShow(el)
{
var elValue=el.value;
如果(hsObj[el.id])
{
var rules=hsObj[el.id]。规则;
for(var r=0;r
是否有一种简单的方法来生成Javascript/PHP或至少是伪代码
我会马上告诉你,这可能会被嘲笑为过于简单,但你最好的选择是->一支铅笔和几张白纸。写下应用程序应该做什么,然后担心它将如何做到这一点。(执行情况)。