Javascript php使用类发布某些元素
我将使用如下html:Javascript php使用类发布某些元素,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我将使用如下html: <form class="form-horizontal" role="form"> <div class="form-group"> <ul class="select_list"> <li id="s1" class="chosen">Apple</li> <li id="s2" style="display: none;">
<form class="form-horizontal" role="form">
<div class="form-group">
<ul class="select_list">
<li id="s1" class="chosen">Apple</li>
<li id="s2" style="display: none;">Peach</li>
<li id="s3" style="display: none;">Plum</li>
<li id="s4" class="chosen">Banana</li>
<li id="s5" style="display: none;">Grapes</li>
<li id="s6" class="chosen">Pear</li>
<li id="s7" style="display: none;">Kiwi</li>
</ul>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
苹果公司
桃子
李子
香蕉
葡萄
梨
猕猴桃
提交
如何使用$\u POST获得class=“selected”元素的ID没有“直接”方法。来自输入
、文本区
和按钮
元素的表单POST数据,可能还有一些我忘记了。您必须使用JavaScript将li
元素“转录”到其中一个元素,可能是
。例如:
var form = $formselector
form.onsubmit = function() {
var chosen = form.getElementsByClassName("chosen");
for (var i=0; i<chosen.length; i++) {
form.innerHTML += '<input type="hidden" name="chosen[]" value="'+chosen[i].id+'">';
}
}
var form=$formselector
form.onsubmit=函数(){
var selected=form.getElementsByClassName(“selected”);
对于(var i=0;i,您需要创建一个隐藏的输入,并通过javascript或jquery为其赋值
<form class="form-horizontal" role="form">
<input type="hidden" name="my_data" value="" />
<div class="form-group">
<ul class="select_list">
<li id="s1" class="chosen">Apple</li>
<li id="s2" style="display: none;">Peach</li>
<li id="s3" style="display: none;">Plum</li>
<li id="s4" class="chosen">Banana</li>
<li id="s5" style="display: none;">Grapes</li>
<li id="s6" class="chosen">Pear</li>
<li id="s7" style="display: none;">Kiwi</li>
</ul>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
<script>
$('.select_list').change(function(){
$('.my_data').val($(this).val());
});
</script>
苹果公司
桃子
李子
香蕉
葡萄
梨
猕猴桃
提交
$('.select_list').change(函数(){
$('.my_data').val($(this.val());
});
试试这个…我想起来了:
var value = [];
$('.chosen').each(function(){
value.push(this.id.substring(1));
});
$('.form-horizontal').submit(function(){
$('.form-horizontal').append('<input type="hidden" value="' + value +'"/>');
}
var值=[];
$('.selected')。每个(函数(){
value.push(这个.id.substring(1));
});
$('.form horizontal').submit(函数(){
$('.form horizontal')。追加('');
}
若要从$\u POST
获取数据,您必须使用带名称的表单元素,通过javascript,您可以像这样获取数据。@SumanBogati喜欢隐藏的输入元素吗?通过表单隐藏的输入元素,您可以这样做。我得到了未捕获的引用错误:表单未定义请参见我的回答试图弄清楚这是如何工作的,但它没有示例please?我给出的示例不起作用吗???您需要在head部分添加jquery文件以启用jquery。