Php 当没有设置值时,HTML5表单应该提交什么

Php 当没有设置值时,HTML5表单应该提交什么,php,html,forms,Php,Html,Forms,我想知道当没有为输入设置值时,HTML表单应该提交什么 我有一个带有smarty的PHP项目,它有一些表单。 其中一个表单有如下输入: <form name="frm_login" method="POST"> ... <div class="login-button"> <input class="button-short" type="submit" na

我想知道当没有为输入设置值时,HTML表单应该提交什么

我有一个带有smarty的PHP项目,它有一些表单。 其中一个表单有如下输入:

<form name="frm_login" method="POST">  
...            
    <div class="login-button">                            
        <input class="button-short" type="submit" name="send_login" onclick="return storeSelector.checkStoreId()">
    </div>
</form>

...            
Chrome和Cliqz看到了这一点:

<input class="button-short" type="submit" name="send_login" onclick="return storeSelector.checkStoreId()">

IE11看到了这个

<input name="send_login" class="button-short" onclick="return storeSelector.checkStoreId()" type="submit" value="Anfrage senden">

我自己的浏览器(CefSharp 1.25版)看到://我知道它不再受支持了。。。但是你知道.NET2.0

<input class="button-short" type="submit" name="send_login" onclick="return storeSelector.checkStoreId()">

所以当我点击提交按钮时

  • Chrome在
    $\u Post[“发送登录”]“提交”
  • IE11在
    $\u Post[“发送登录”]“Anfrage Senden”
    HTML5.1规范中发送 如果未设置值,正确的行为是什么?

    如果未设置该值,则该值应为空字符串

    值内容属性提供输入的默认值 元素。添加、设置或删除“值内容”属性时, 如果控件的脏值标志为false,则用户代理必须设置 将元素的值转换为“值内容”属性的值, 如果有一个,则输入空字符串,否则,然后运行 当前值清理算法(如果已定义)

    浏览器应该发送自己喜欢的内容还是不发送内容是正确的?

    根据发送前的说明,无论设置或值如何,都会初始化每个可提交元素。这应该不同于4.01,即即使禁用的元素也会以空值发送

  • 最初,让表单数据集是名称-值类型元组的列表 空的
  • 而且它们从来都是不稳定的

    RFC中是否有内容?

    没有。 有关复选框和单选按钮的一些规则如下所示

    HTML4.01规范 如果未设置值,正确的行为是什么?

    如果未设置该值,则该值应为
    未定义

    控件的“当前值”首先设置为初始值。此后,可以通过用户交互和脚本修改控件的当前值

    控件的初始值不变。因此,当表单被重置时, 每个控件的当前值将重置为其初始值。如果 控件没有初始值,窗体重置对 该控件未定义

    浏览器应该发送自己喜欢的内容还是不发送内容是正确的?

    我只是说,不

    表单数据集基于的值

    如果提交表单时控件没有当前值, 用户代理不需要将其视为成功的控件

    因此,没有标准的行为

    RFC中是否有内容?

    没有。
    有关复选框和单选按钮的一些规则如下。

    问题是:该值是否未设置,或者只是未从html中设置。我认为浏览器可以为提交按钮设置默认值(如“Anvrage Senden”),这也是显示和发布的值,除非您明确指定value属性。