【问题标题】:HTML ui/li button form submitHTML ul/li 按钮表单提交
【发布时间】:2015-04-09 19:48:01
【问题描述】:

我正在尝试使用选择器创建动态按钮,我将在按钮下拉列表中选择的内容将提交到下一页。但是它不起作用我无法检索按钮中选择的任何内容。在表单中提交此类数据的正确方法是什么?

我在使用 $_POST["packageType"] 获取表单的同时将表单提交到 php 页面,发现 here 以下方法:

onclick="myForm.myVariable.value='foo';myForm.submit();"

这样的动态值提交是合法的还是有更好的方法?

<form action="target.php" method="post" id="1111">
<input id="packageType" type="hidden" name="packageType" value="N/A"/>

<div class="btn-group">
    <button type="button" class="btn btn-success btn-xs">Add Plan</button>
    <button type="button" class="btn btn-success dropdown-toggle btn-xs" data-toggle="dropdown" aria-expanded="false">
        <span class="caret"></span>
        <span class="sr-only">Toggle Dropdown</span>
    </button>
    <ul class="dropdown-menu package-selector" role="menu">
        <li><a href="#" onclick="1111.packageType.value='basic';1111.submit();">Type 1</a></li>
        <li><a href="#" onclick="1111.packageType.value='premium';1111.submit();">Type 2</a></li>
    </ul>
</div>

【问题讨论】:

  • 您是使用 Javascript 还是 php 来获取传递到下一页的值,您是如何传递它的?您提供的相关信息越多,人们就越容易为您提供帮助。

标签: javascript php html twitter-bootstrap dom


【解决方案1】:

我很快发现,您的解决方案可以工作(只要您的引导代码设置正确)。您如何引用表单“1111”只是一个问题。

尝试像这样重写你的 ul / li 标签

<ul class="dropdown-menu package-selector" role="menu">
    <li><a href="#" onclick="document.getElementById('1111').packageType.value='basic';document.getElementById('1111').submit();">Type 1</a></li>
    <li><a href="#" onclick="document.getElementById('1111').packageType.value='premium';document.getElementById('1111').submit();">Type 2</a></li>
</ul>

document.getElementById('1111') 搜索表单并引用它。 JavaScript 不能直接理解1111

还有其他一些方法可以引用表单。例如 document.forms[0] 但是,由于您的表单中有 id 属性,这是最简单的方法。

附带说明:我建议不要使用以数字开头的 ID(例如,将 1111 替换为 myform1111 或类似名称)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-11
    • 2011-02-19
    • 2014-03-29
    • 1970-01-01
    • 1970-01-01
    • 2013-04-09
    相关资源
    最近更新 更多