当选择下拉菜单中的项目时,是否可以更新表单中的隐藏值“项目名称”?
<input type="hidden" name="item_name" value="PHOTOID 2 Product MUG" />
下拉列表:(填充数据。
马克杯£9.99a4打印£2.50
等
等
当选择某个项目时,但在按下添加到购物车按钮之前,可以更新item_name值?否则我只是将照片ID发送到购物车。这将项目添加到paypal购物车,我只能有一个项目名称,然后是下面填充的选项列表。我希望这是有道理的。
提前感谢:)
答案 0 :(得分:1)
如果您的下拉菜单是<select>
标记,则可以执行以下操作:
<script type="text/javascript">
function updateItemName() {
var select = document.getElementById('select_stuff');
var field = document.getElementById('item_name');
field.value = select.options[select.selectedIndex].value;
};
</script>
<input type="hidden" name="item_name" id="item_name" value="" />
<select name="select_stuff" id="select_stuff" onchange="updateItemName()">
<option value="Stuff 1" >Stuff 1</option>
<option value="Stuff 2">Stuff 2</option>
</select>
答案 1 :(得分:0)
你可以用javascript做,但我不太清楚为什么你需要。如果你有一个选择值和一个隐藏字段应该采取与选择相同的值,那么这意味着你提交相同的数据两次。只需直接使用select控件的值即可。
答案 2 :(得分:0)
在javascript中很容易做到;与jQuery微不足道。让我们假装我们有以下html:
<ul id="item-list">
<li>One certain item</li>
<li>Another one</li>
...
</ul>
<input type="hidden" name="item_name" id="item_name" value="" id="the_id"/>
你要做的是:
<script type="text/javascript">
$('#item-list li').click(function() {
$('#the_id').attr(name, $(this).text());
});
</script>
这意味着:
当用户点击具有id item-list的元素所包含的li时 分配给id为the_id的元素,作为名称,是他们刚刚点击的li所包含的文本。
抱歉,我刚刚意识到你想要更改名称而不是值:固定。