jquery 获取按钮值和具有该值的 select 选项 (Smarty)
jquery get button value and select option with this value (Smarty)
我的 tpl 文件中有这段代码:
<select id="id_order_state" class="form-control" name="id_order_state">
{foreach from=$states item=state}
<option value="{$state['id_order_state']|intval}"{if isset($currentState) && $state['id_order_state'] == $currentState->id} selected="selected" disabled="disabled"{/if}>{$state['name']|escape}</option>
{/foreach}
</select>
我也有这个代码:
{foreach from=$states item=state}
<p value="{$state['id_order_state']|intval}" class="btn btn-default">{$state['name']|escape}</p>
{/foreach}
我想做的是当我点击一个特定的 p 项时,select 框下的选项会自动获取被点击的 p 项的值并被 selected select 框的选项。一般来说,我试图将 select 选项更改为可点击的按钮,我想通过 jquery 使它变得棘手。我该怎么做?
您可以在 body
:
结束前添加此脚本
<script>
$('p.btn').click(function () {
$('#id_order_state').val($(this).attr('value'));
});
</script>
根据您是否对其他段落使用 btn css class,selector 可能需要更精确.
但它检测到段落上的点击,获取 value 属性并将其分配给 select 控件。
我不确定您为什么在 selected 选项上使用 disabled 属性。当 select 列表的值更改时,您可能还想更改该属性。
我的 tpl 文件中有这段代码:
<select id="id_order_state" class="form-control" name="id_order_state">
{foreach from=$states item=state}
<option value="{$state['id_order_state']|intval}"{if isset($currentState) && $state['id_order_state'] == $currentState->id} selected="selected" disabled="disabled"{/if}>{$state['name']|escape}</option>
{/foreach}
</select>
我也有这个代码:
{foreach from=$states item=state}
<p value="{$state['id_order_state']|intval}" class="btn btn-default">{$state['name']|escape}</p>
{/foreach}
我想做的是当我点击一个特定的 p 项时,select 框下的选项会自动获取被点击的 p 项的值并被 selected select 框的选项。一般来说,我试图将 select 选项更改为可点击的按钮,我想通过 jquery 使它变得棘手。我该怎么做?
您可以在 body
:
<script>
$('p.btn').click(function () {
$('#id_order_state').val($(this).attr('value'));
});
</script>
根据您是否对其他段落使用 btn css class,selector 可能需要更精确.
但它检测到段落上的点击,获取 value 属性并将其分配给 select 控件。
我不确定您为什么在 selected 选项上使用 disabled 属性。当 select 列表的值更改时,您可能还想更改该属性。