0
ここでは選択ボックスをソートしています。選択ボックスを変更すると2つのイベントが実行され、最初に隠し値の状態と2番目の送信フォームが設定されました。Google AMPで値を更新した後にフォームを送信
私はソートの更新された隠された値を持つフォームを提出する必要がありますが、変更されるたびに選択ボックスフォームを早期に提出して隠し値を更新することができます。
私は、隠れた値の更新後に送信フォームまたは送信フォームに遅延が必要です。
私はこれをどのように行うことができますか教えてください。
<amp-state id="sorting">
<script type="application/json">
{
"date_desc" : { "text" : "Most Recent", "type" : "desc", "by" : "date" },
"year_asc" : { "text" : "Year Ascending", "type" : "asc", "by" : "year" },
"year_desc" : { "text" : "Year Descending", "type" : "desc", "by" : "year" },
}
</script>
</amp-state>
<form target="_top" action="/amp/search" id="search" novalidate="" class="i-amphtml-form">
<input value="desc" type="hidden" name="search[order_type]" [value]="sorting[sort || ''].type" id="search_order_type">
<input value="top" type="hidden" name="search[order_by]" [value]="sorting[sort || ''].by" id="search_order_by">
</form
<select id="listing" name="listing" on="change:AMP.setState({sort:event.value}),search.submit">
<option value="date_desc">Most Recent</option>
<option value="year_asc">Year Ascending</option>
<option value="year_desc">Year Descending</option>
</select>
amp-bindを使用するのではなく、selectを単にフォームに入れることができない理由はありますか? –
選択ボックスはソート目的のものです。@SebastianBenz – GuRu
私はそれを理解していますが、新しい値を選択するとフォームが送信されます。選択をフォームの中に入れると、選択した値もサーバーに送信されます。 –