1

我有一个表单,它使用 jQuery 隐藏不相关的字段,除非满足某些条件:

<form action="thepage.php id="subform" method="post">
      <h2>
        Select a Drawing Type:
      </h2>
      <div>
        <input type="radio" name="drawingType" tabindex="10" value="1"/>Drawing 1
        <input type="radio" name="drawingType" value="2"/>Drawing 2
        <input type="radio" name="drawingType" value="3"/>Drawing 3
        <input type="radio" name="drawingType" value="4"/>Drawing 4
      </div>
      <p class="drawingInput drawX">
        Is this drawing related to an old drawing?
        <input type="radio" name="revUp" tabindex="100" value="0"/>No 
        <input type="radio" name="revUp" value="1"/>Yes
      </p>

  <input type="submit" name="submitted" value="New Drawing" />
</form>

使用 jQuery:

$('.drawingInput').hide;
$('input:[name="drawingType"]').change(function(){
  if ($(this).val()==1){
    $('.drawingInput').hide();
    $('.drawX').show();
  } else if ($(this).val()==2){
    $('.drawingInput').hide();
    $('.drawX').show();
  } else if ($(this).val()==3){
    $('.drawingInput').hide();
  } else if ($(this).val()==4){
    $('.drawingInput').hide();
  } 
});

So when Drawing 1 or 2 is selected, the next input button is revealed. 然后用户选择revUp字段并提交,一切正常。但是,如果p从未显示,例如通过未在第一个单选框中选择值 1 或 2,revUp则永远不会 $_POST'ed,并带有var_dump($_POST).

revUp如果用户从未看到它,我如何检索它的值?它在可见时显示在 var_dump 中,但在从未被选择时不显示。控制台阅读器也是如此,检查发送的标头。

4

1 回答 1

0

看起来像浏览器特定的东西。尝试将它们显示给用户,但不透明度为 99.99999% 或类似的东西,然后查看是否发送了这些值。

另一方面:如果用户从未编辑过它们,你真的需要发送它们吗?这不意味着你知道他们的价值观吗?

于 2013-07-22T18:46:42.287 回答