Javascript 如何打印html代码以便我只编写一次?

Javascript 如何打印html代码以便我只编写一次?,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我在一个web应用程序中工作,正在进行重构 无论如何,这样做,我陷入了一个两难境地:我的页面中有一些相似或相同的部分,我想压缩成一个,以便只进行一次编辑,因为编辑正在成为一种痛苦 但如何做到这一点呢?我正在使用php、js和jquery 用php echos做这件事是一个大问题;管理所有的括号真的很困难,而且在我看来,这不是最优雅的解决方案,另外,我需要对打印的内容进行一些控制 我在考虑函数,但由于我没有太多的经验,我真的不知道在哪里我可以击中我的头。先谢谢你 编辑:有人问我一些例子 <f

我在一个web应用程序中工作,正在进行重构

无论如何,这样做,我陷入了一个两难境地:我的页面中有一些相似或相同的部分,我想压缩成一个,以便只进行一次编辑,因为编辑正在成为一种痛苦

但如何做到这一点呢?我正在使用php、js和jquery

用php echos做这件事是一个大问题;管理所有的括号真的很困难,而且在我看来,这不是最优雅的解决方案,另外,我需要对打印的内容进行一些控制

我在考虑函数,但由于我没有太多的经验,我真的不知道在哪里我可以击中我的头。先谢谢你

编辑:有人问我一些例子

<form action="insert.php" method="POST" class="big" style="display:none;">
<h3> Insert Contact </h3>
    <fieldset class="col2">
    <!-- Some inputs here -->
    </fieldset>

    <div>
        <input type="submit" value="Send">
        <input type="reset" value="Clean Form">
    </div>
    <input type="text" name="insert" value="1" style="display:none;">
    <input type="text" name="modify" value="1" style="display:none;">
    <input type="text" name="secret" value="<? echo($perm); ?>" class="hidden">
</form>

插入触点
您可以查看(包含示例)

它很容易使用,您只需编写:


由于可以在.php文件中编写html/js,因此可以使用它包含页面的部分内容。

可以使用php的
include()
函数在文件中包含html

使用您提供的HTML的示例 form.php

<form action="insert.php" method="POST" class="big" style="display:none;">
<h3> Insert Contact </h3>
    <fieldset class="col2">
    <!-- Some inputs here -->
    </fieldset>

    <div>
        <input type="submit" value="Send">
        <input type="reset" value="Clean Form">
    </div>
    <input type="text" name="insert" value="1" style="display:none;">
    <input type="text" name="modify" value="1" style="display:none;">
    <input type="text" name="secret" value="<? echo($perm); ?>" class="hidden">
</form>

插入触点

另一个有助于创建动态表单的想法:

some\u dynamic\u form.php

<?php
function getDynamic($form)
{
    switch ($form) {
        case 'form1':
            return array('hello', 'world', '1');
        case 'form2':
            return array('hello', 'from', '2');
    }
}

?>

index.html

<?php
require_once 'some_dynamic_form.php';
$dynamicForm = getDynamic('form1');
?>
<html>
<body>
<form action="#">
    <?php foreach ($dynamicForm as $param): ?>
        <input type="text" name="<?php echo $param ?>" />
    <?php endforeach; ?>
</form>
</body>
</html>


我建议使用MVC方法来分离模型(数据)、视图和控制器(应用程序的大脑)


你也应该考虑使用一个模板引擎,比如Tigg。< /P>你用PHP的<代码>包含()<代码>查看了包含的文件吗?因此,添加具有可以调用的方法的常见文件。我知道这不是您所要求的,作为一种实践和学习如何编写代码,您肯定应该以这种方式进行。但是当你的应用程序不断增长时,它将变得越来越难以维护,你将不得不编写大量复杂的代码来实现你想要的功能。使用框架会给你带来很大的好处,或者像Wordpress这样的东西就足够了。只是说:)是的,我知道框架。如果我知道的话,我会用的。但是现在有点晚了,顺便说一句,我的应用程序并没有变得太复杂,而且我正在做一些重构,因为我有一些空闲时间,这是我正在做的第一个web应用程序。现在一切都在控制之中:)我想在不同的页面上打印不同的东西。使用这种方法,看起来我必须尽可能多地处理我需要的部分文件!而且我真的无法控制内容…@markwuki你可以在任何地方都包含相同的文件,根据加载的页面,在该文件中有控制输出的条件。无论如何,您应该注意,

include
require
使用服务器路径,而不是域路径。您可以尝试模板化引擎,如mustach。你的页面是“基础”,JS将填补空白(你也可以用PHP做模板),如果我只想添加include文件的一些部分呢?我最糟糕的噩梦是到处都是“include.php”的大量文件。例如,我可以创建一个form.php,在那里我可以选择我想要的内容。不过,我还是要做“echo”es。对于包含的HTML,您不需要echo。我更新了答案,以显示如何将您发布的表格包含在问题中。您可以为不同的文件使用不同的
include()
语句。如何以.php格式编写其他表单并提供一些参数供选择?比如:如果($formchoose==“insert”),则打印表单。但是再一次。。没有回声。只有括号{}会自动把所有的东西都包含进去吗?@markwuki当然,你可以这样做。有几种不同的方法可以实现这一点。我更新了显示了几个选项的答案;那么这样行吗?如果是这样,这就是我想要的,我会尝试,我不认为这也能奏效:)但是:你不需要在“案例”后加上“中断”吗?我有一个非常类似的想法,但问题是,我不想使用echo'es,因为括号和它看起来非常难看,但是我想我没有太多的选择…你总是可以使用一个已知的MVC框架,它可以为你提供所有的工具,使代码看起来可读(推荐-Laravel)。好吧,现在添加一个框架可能有点晚了!因为如果我认识他们的话,我一开始就会加上它!这是我的第一个项目,所以我还没有做好准备:)
<html>
    <head>
    </head>
    <body>
        <div>Hello World!</div>
        <div>This is some content.  The number is 10</div>
        <form action="insert.php" method="POST" class="big" style="display:none;">
        <h3> Insert Contact </h3>
        <fieldset class="col2">
        <!-- Some inputs here -->
        </fieldset>

        <div>
            <input type="submit" value="Send">
            <input type="reset" value="Clean Form">
        </div>
        <input type="text" name="insert" value="1" style="display:none;">
        <input type="text" name="modify" value="1" style="display:none;">
        <input type="text" name="secret" value="<? echo($perm); ?>" class="hidden">
        </form>
    </body>
</html>
<?php include("insert-form.php"); ?>
<?php include("edit-form.php"); ?>
<?php
$formchoose = "insert";

if($formchoose == "insert") {
    include("form-insert.php");
} else {
    include("form-default.php");
}
?>
<?php
$formchoose = "insert";
include(forms.php);
?>
switch ($formchoose) {
    case "insert":
        ?>
            <form id="insert-form">
            <!-- form here-->
            </form>
        <?
    break;
    case "edit":
        ?>
            <form id="edit-form">
            <!-- form here-->
            </form>
        <?
    break;
    default:
    break;
}
<?php
function getDynamic($form)
{
    switch ($form) {
        case 'form1':
            return array('hello', 'world', '1');
        case 'form2':
            return array('hello', 'from', '2');
    }
}

?>
<?php
require_once 'some_dynamic_form.php';
$dynamicForm = getDynamic('form1');
?>
<html>
<body>
<form action="#">
    <?php foreach ($dynamicForm as $param): ?>
        <input type="text" name="<?php echo $param ?>" />
    <?php endforeach; ?>
</form>
</body>
</html>