【问题标题】:HTML select tag in SWI-PrologSWI-Prolog 中的 HTML 选择标签
【发布时间】:2013-05-29 21:21:22
【问题描述】:

如何将其转换为 SWI-Prolog ?我在网上没有找到如何在 prolog 中编写 select,你能告诉我如何让 php 代码在 prolog 中工作吗?

<select id="data_nastere_zi" name="data_nastere_zi">                
    <option value="ZZ">ZZ</option>
    <?php for($i = 1; $i < 32; $i++){ ?>
         <option <?php print ($data[0][2]==$i)?'selected':''; ?>
         value="<?php echo $i;?>">
         <?php echo $i; ?>  </option>
         <?php 
         }
         ?>

</select> 

【问题讨论】:

    标签: php html prolog


    【解决方案1】:

    似乎按预期方式工作:

    ?- phrase(html(select([id(data_nastere_zi)], 
                          [option(greetings),
                           option([selected],pythagoras)])), X), 
       print_html(X).
    

    生产:

    <select id="data_nastere_zi">
    <option>greetings</option>
    <option selected>pythagoras</option>
    </select>
    

    您可以使用简洁的模块化技术来生成您需要的选项:

    my_options(0) --> [].
    my_options(N) --> html(option(N)), { succ(N0, N) }, my_options(N0).
    

    然后在查询中,使用\ 来引用该规则:

    ?- phrase(html(select([id(data_nastere_zi)], 
                          [option(greetings),
                           \my_options(4)           % <-- note the \
                          ])), X), 
       print_html(X).
    

    生产:

    <select id="data_nastere_zi">
    <option>greetings</option>
    <option>4</option>
    <option>3</option>
    <option>2</option>
    <option>1</option>
    </select>
    

    您需要在其中添加一些信息,说明您希望哪一个会被选中,但这并不难。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-16
      • 2011-04-26
      相关资源
      最近更新 更多