2015-02-09 109 views
0

我正在尝试使用选择器创建动态按钮,并且我将在按钮下拉列表中选择的按钮将被提交到下一页。但它不起作用,我无法检索按钮中选择的内容。以某种形式提交此类数据的正确方法是什么?HTML ui/li按钮表单提交

我提交表单的PHP页面,而得到它使用$ _ POST [“packageType”],发现here以下方法:

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

它是合法的或者有更好的办法做这样的动态值提交?

enter image description here

<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> 

+0

你使用Javascript或PHP来获得传递到下一页的价值,你是如何通过它?您可以提供的相关信息越多,人们就越容易帮助您。 – NewToJS 2015-02-09 22:34:21

回答

1

当我看到它很快,(因为你的引导代码设置正确,只要)你的解决方案可以工作。你如何引用你的表格“1111”只是一个问题。

尝试重写你的UL /李标签一样,

<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(例如,用myform1111或类似的替换1111)。