首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我有一个简短的html表单与一个php for循环,它允许用户在页面上构建相同的表单多达十次

问我有一个简短的html表单与一个php for循环,它允许用户在页面上构建相同的表单多达十次
EN

Stack Overflow用户
提问于 2013-06-20 22:34:05
回答 1查看 77关注 0票数 1

$i变量是每个字段,并填充在'inp‘框中,’inp‘框就是输入框,sboxes就是选择框。当页面加载时,只有一个表单,它具有添加培训师的所有条件。在第一个表单中,培训师的名字将是trainer_name1。如果他们选择点击new按钮,他们可以填写另一个培训师的信息,第二个表单'name‘的输入框将只是trainer_name2,所有其他字段将分别以表单中的名称命名。在构建新表单时,只需将下一个连续数字添加到字段末尾,无论字段的名称是什么。

下面是我的代码:

代码语言:javascript
复制
<fieldset><legend>Trainer Request</legend></fieldset>
<tr><td><input type='button' onClick="if (show_item(1,10, 0)) { this.style.display = 'none'; }" value='New'></td></tr>
<?php
$contact_array = array('ACCEPTED TRAINING','DECLINED TRAINING','LEFT MESSAGE FOR TRAINING ACCEPTANCE',
        'NEED TO CONTACT TO SEE IF INTERESTED',
        'NEED PAPERWORK/TRAINING',
        'NEED SIGNED CONTRACT AND PAPERWORK',
        'NEED TO COMPLETE TRAINING');

for ($i = 10; $i > 0; $i=$i-1)
    {
    echo "<table id='hidden$i' style='display:none;'><tr>";
    echo "<td>Date</td><td>Status</td></tr>";  
    echo "<tr><td>"; inp("date$i"); echo "</td><td>";
    sbox("contact$i", $contact_array, 0, 'wide2');
    echo "</td></tr>

    <tr><td>Facility</td><td>"; 
    inp("facility$i",50);   echo "</td></tr>";
    echo "<tr><td>Trainer Name</td><td>";
    inp("trainer_name$i",35);
    echo "<tr><td>Distance From</td><td>";
    sbox("distance_from$i", array('1','2','5','10','15','20','25','30','40','50','60','70','80','90','100'));
    echo "</td></tr>

    <tr><td>Phone</td><td>";
    inp("phone$i",13,'phone');
    echo "</td><tr><tr><td>Email</td><td>";
    inp("email$i",50);
    echo "</tr><tr><td>Address 1</td><td>";
    inp("addr1$i",50);
    echo "</tr><tr><td>Address 2</td><td>";
    inp("addr2$i",10);
    echo " City ";
    inp("city$i",20);
    echo "</td></tr><tr><td>State</td><td>";
    inp("state$i",2);
        echo " Zip ";
    inp("zip$i",'zip');
    echo "</td></tr><tr><td>Notes</td><td>";
    tbox("notes$i", 40, 3);
    echo "</td></tr></table>";
    }
?>

<script type='text/javascript'>
show_item(1,10,1);
</script>

正如你在下面看到的,我正在构建一个链接,无论培训师的名字是什么,这个链接都会命名为这个链接,在这个例子中,trainer_name1是Tim Jackson,所以我刚刚用他的名字构建了一个超链接。

代码语言:javascript
复制
<?php
// print_r ($_GET);

    echo sendback_link($_GET['trainer_name1'], 'ACS/TrainerLookup', 'trainer_id=trainer_code&trainer_name=trainer_name'); 


?>

我搞不懂如何将这样的动态链接添加到for循环中,这样当表单构建1- 10时,每个trainer_name2、trainer_name3、trainer_name4等的名称都会有超级链接。

我在考虑为数字1-10创建一个新的变量,并将其附加到$_GETtrainer_name$。像这样的吗?

我希望这是有意义的,任何帮助都会非常感谢。

EN

回答 1

Stack Overflow用户

发布于 2013-06-21 15:23:15

如果我没有理解错你的问题,你正在尝试添加更多的内容或替换已经用PHP生成的网页上的内容。

我认为使用AJAX可以实现您想要做的事情。AJAX是一种创建动态网页的技术。AJAX允许通过在后台与服务器交换少量数据来异步更新网页。这意味着可以更新网页的一部分,而无需重新加载整个页面。

在您的案例中,这个过程可以用3个步骤来描述:

  • 向服务器发出新请求的浏览器(使用javascript)
  • the服务器处理请求并将某些信息发送回浏览器
  • 浏览器处理这些信息(同样使用javascript),然后更新部分网页

这里有一个示例here,它展示了如何动态更改网页内容。

不过,如果允许的话,我会建议你使用像jQuery这样的javascript框架,它简化了整个过程(在谷歌上搜索下载和如何使用的说明)。

您可以阅读有关在jQuery here中使用AJAX的内容,并阅读下面的示例,以便更好地理解如何使用它。

如果您打算尝试在jQuery中使用AJAX,或者只是简单地使用AJAX,我建议您在测试页面上进行尝试,以获得一个简单的工作示例,然后添加一些内容并检查是否一切都如预期的那样工作。当测试页正常工作时,将代码导入到您的页中。

这就是我会怎么做,也许会有更好或更简单的方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17216472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档