仅在PHP中使用与DOM元素关联的数据?

仅在PHP中使用与DOM元素关联的数据?,php,dom,post,Php,Dom,Post,您知道这可能非常有用,但是我可以在表单中使用它并直接用PHP检查它吗?像$\u POST['inputValue']但是$\u POST['dataAttribute']?或者甚至用PHP设置它 我似乎看到很多PHP开发人员忘记了一件事,那就是PHP是一种服务器语言,如果没有像Javascript这样的客户端语言的帮助,就无法与客户端进行很多交互 您应该能够使用DOMDocument操作在服务器端生成data-*属性,如果您是那么老派的话,甚至可以通过字符串连接来生成。如果使用DOMDocume

您知道这可能非常有用,但是我可以在表单中使用它并直接用PHP检查它吗?像
$\u POST['inputValue']
但是
$\u POST['dataAttribute']
?或者甚至用PHP设置它

我似乎看到很多PHP开发人员忘记了一件事,那就是PHP是一种服务器语言,如果没有像Javascript这样的客户端语言的帮助,就无法与客户端进行很多交互

您应该能够使用DOMDocument操作在服务器端生成data-*属性,如果您是那么老派的话,甚至可以通过字符串连接来生成。如果使用DOMDocument方法,那么在构建DOM树的过程中修改值也应该非常容易

$doc = new DOMDocument ();
$elem = $doc -> createElement ('input');
$doc -> appendChild ($elem);
$elem -> setAttribute ('data-foo', '123');
// etc
一旦将DOM模型转换为文本以发送到浏览器,任何后续修改都将变得毫无意义,因为它们不会反映在浏览器中


如果需要在客户端对服务器进行更改,那么需要在客户端执行一些javascript来收集所有数据值,序列化它们并将它们发布到服务器

我似乎看到很多PHP开发人员忘记了一件事,那就是PHP是一种服务器语言,如果没有像Javascript这样的客户端语言的帮助,就无法与客户端进行很多交互

您应该能够使用DOMDocument操作在服务器端生成data-*属性,如果您是那么老派的话,甚至可以通过字符串连接来生成。如果使用DOMDocument方法,那么在构建DOM树的过程中修改值也应该非常容易

$doc = new DOMDocument ();
$elem = $doc -> createElement ('input');
$doc -> appendChild ($elem);
$elem -> setAttribute ('data-foo', '123');
// etc
一旦将DOM模型转换为文本以发送到浏览器,任何后续修改都将变得毫无意义,因为它们不会反映在浏览器中


如果需要在客户端对服务器进行更改,那么需要在客户端执行一些javascript来收集所有数据值,序列化它们并将它们发布到服务器

我似乎看到很多PHP开发人员忘记了一件事,那就是PHP是一种服务器语言,如果没有像Javascript这样的客户端语言的帮助,就无法与客户端进行很多交互

您应该能够使用DOMDocument操作在服务器端生成data-*属性,如果您是那么老派的话,甚至可以通过字符串连接来生成。如果使用DOMDocument方法,那么在构建DOM树的过程中修改值也应该非常容易

$doc = new DOMDocument ();
$elem = $doc -> createElement ('input');
$doc -> appendChild ($elem);
$elem -> setAttribute ('data-foo', '123');
// etc
一旦将DOM模型转换为文本以发送到浏览器,任何后续修改都将变得毫无意义,因为它们不会反映在浏览器中


如果需要在客户端对服务器进行更改,那么需要在客户端执行一些javascript来收集所有数据值,序列化它们并将它们发布到服务器

我似乎看到很多PHP开发人员忘记了一件事,那就是PHP是一种服务器语言,如果没有像Javascript这样的客户端语言的帮助,就无法与客户端进行很多交互

您应该能够使用DOMDocument操作在服务器端生成data-*属性,如果您是那么老派的话,甚至可以通过字符串连接来生成。如果使用DOMDocument方法,那么在构建DOM树的过程中修改值也应该非常容易

$doc = new DOMDocument ();
$elem = $doc -> createElement ('input');
$doc -> appendChild ($elem);
$elem -> setAttribute ('data-foo', '123');
// etc
一旦将DOM模型转换为文本以发送到浏览器,任何后续修改都将变得毫无意义,因为它们不会反映在浏览器中


如果需要在客户端对服务器进行更改,那么需要在客户端执行一些javascript来收集所有数据值,序列化它们并将它们发布到服务器

为了保存过去的数据值,您可以在提交事件之前,使用所需的所有数据属性在表单中创建隐藏变量

Html:


jQuery:

    <script>
    $(function() {
      $("form:first").submit(function() {
          // any validation
          var v = $("#element").data("myattr");
          $("form:first").append('<input type="hidden" name="data_myattr" value="' + v  +'">');
         return true;
      });
    });
    </script>

$(函数(){
$(“form:first”).submit(函数(){
//任何验证
var v=$(“#元素”).数据(“myattr”);
$(“格式:第一”)。附加(“”);
返回true;
});
});
使用PHP呈现数据属性:

<?php
     $myattrvalue= $_POST['data_myattr']; 
?>
<div id="element" data-myattr="<?php echo $myattrvalue; ?>"></div>


为了保存过去的数据值,您可以在提交事件之前,使用所需的所有数据属性在表单中创建隐藏变量

Html:


jQuery:

    <script>
    $(function() {
      $("form:first").submit(function() {
          // any validation
          var v = $("#element").data("myattr");
          $("form:first").append('<input type="hidden" name="data_myattr" value="' + v  +'">');
         return true;
      });
    });
    </script>

$(函数(){
$(“form:first”).submit(函数(){
//任何验证
var v=$(“#元素”).数据(“myattr”);
$(“格式:第一”)。附加(“”);
返回true;
});
});
使用PHP呈现数据属性:

<?php
     $myattrvalue= $_POST['data_myattr']; 
?>
<div id="element" data-myattr="<?php echo $myattrvalue; ?>"></div>


为了保存过去的数据值,您可以在提交事件之前,使用所需的所有数据属性在表单中创建隐藏变量

Html:


jQuery:

    <script>
    $(function() {
      $("form:first").submit(function() {
          // any validation
          var v = $("#element").data("myattr");
          $("form:first").append('<input type="hidden" name="data_myattr" value="' + v  +'">');
         return true;
      });
    });
    </script>

$(函数(){
$(“form:first”).submit(函数(){
//任何验证
var v=$(“#元素”).数据(“myattr”);
$(“格式:第一”)。附加(“”);
返回true;
});
});
使用PHP呈现数据属性:

<?php
     $myattrvalue= $_POST['data_myattr']; 
?>
<div id="element" data-myattr="<?php echo $myattrvalue; ?>"></div>


为了保存过去的数据值,您可以在提交事件之前,使用所需的所有数据属性在表单中创建隐藏变量

Html:


jQuery:

    <script>
    $(function() {
      $("form:first").submit(function() {
          // any validation
          var v = $("#element").data("myattr");
          $("form:first").append('<input type="hidden" name="data_myattr" value="' + v  +'">');
         return true;
      });
    });
    </script>

$(函数(){
$(“form:first”).submit(函数(){
//任何验证
var v=$(“#元素”).数据(“myattr”);
$(“格式:第一”)。附加(“”);
返回true;
});
});
使用PHP呈现数据属性:

<?php
     $myattrvalue= $_POST['data_myattr']; 
?>
<div id="element" data-myattr="<?php echo $myattrvalue; ?>"></div>


嗯。我已经为此工作了1个多小时了。现在还有其他非常好的答案

尽管如此,她