当前位置: 首页 > 知识库问答 >
问题:

超文本标记语言选择POSTing文本而不是所选的值

薛弘厚
2023-03-14

出于某种原因,我通过POST提交的表单发送的是选项文本,而不是表单的选项值。这是我的选择声明:

<select name = "newfreq">
     <option val='1'>every week</option>
     <option val='2'>every 2 weeks</option>
</select>

当我用PHP打印我的$\u POST数组时。我有:

 [newfreq] => every 2 weeks

我对jquery特别陌生,我使用jquery以模态的方式呈现表单,因此我将粘贴下面的完整表单/div和javascript,以防相关:

  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  <script src="//code.jquery.com/ui/1.11.3/jquery-ui.js"></script>


  <script>
  $(function() {
    var dialog, form,



    dialog = $( "#dialog-form" ).dialog({
      autoOpen: false,
      height: 300,
      width: 350,
      modal: true,

    });

     form = dialog.find( "form" ).on( "submit", function( event ) {
     // event.preventDefault();

    });

    $( "#create-user" ).button().on( "click", function() {
      dialog.dialog( "open" );
    });
  });
  </script>


<input id = "create-user" type="submit" tabindex="-1" value = "Change deal" >

<div id="dialog-form" >


  <form method = "post" action = "details.php">
    <fieldset>
      <label for="name">Number of hours</label>
      <input type="text" name="newhours" id="name" value = <?php echo $totalhours; ?>  class="text ui-widget-content ui-corner-all">
      <label for="email">Frequency</label>
      <select name = "newfreq">
           <option val='1'><?php echo return_frequency($typedeal ,1)?></option>
            <option val='2'><?php echo  return_frequency($typedeal ,2); ?></option>
      </select>

      <input type = "hidden" name = "included" value = '<?php echo $included;?>'/>
      <input type = "hidden" name = "id" value = '<?php echo $id_bus;?>'/>
      <br>
      <input type="submit" tabindex="-1" >
    </fieldset>
  </form>
</div>

return_frequency()是一个php函数,根据输入返回“每2周”或“每周”。

我错过了什么?

共有2个答案

楚志强
2023-03-14

更改为:

<select name = "newfreq">
 <option value='1'>every week</option>
 <option value='2'>every 2 weeks</option>
</select>
李安歌
2023-03-14

<代码>

我知道可能是JQuery让你困惑,因为他们经常使用. val,但是实际的超文本标记语言使用value,正常的Javascript也使用. value

我想既然你没有正确指定一个值,那么你的浏览器一定是以某种方式将文本放入了value。不过,不要依赖于此,因为我认为这可能是一个bug,而且并非所有浏览器都会这样做。

 类似资料:
  • 我想选择强标签内的文本,但不在其下的div。。。 有没有可能直接与jsoup合作? 我的选择尝试(不工作,选择强标签内的完整内容): HTML:

  • 我想提取一个文本后,每个标签使用jSoup。有什么方法可以直接选择它,还是我必须执行。

  • 我的html表单有一个选择选项。在我从选项更改数据并提交数据后,将运行Mysql查询。我想要的是,在从select中选择数据之后,它将重新加载并将值传递给php代码。 这是html 这里是提交后运行的php 我试过这个。类型submit(),但它不发送数据。我知道我需要学习Ajax。是否有任何方法可以重新更改表单并将数据传递给php?

  • 我试图通过泽西客户端的Web服务获取一个对象,通过发送预注册ID作为路径变量的服务,在高级REST客户端和邮递员上测试它-它的工作原理,但当我通过泽西客户端从java代码使用Web服务时,我得到超文本标记语言返回而不是JSON。 这是密码 Web服务- 泽西客户- 通过邮递员和ARC消费web服务后- 如上图所示,通过jersey客户端使用web服务后,我得到的是HTML内容,而不是JSON- 然

  • 我试图在HTML的pre标签中包装文本,但它不起作用。我使用下面的CSS作为我的标签。 我从如何在pre标记中换行文本? 我已添加

  • 我在jQuery中看到了这一点——它做了什么?