go 言語を使用して、go-template を使用して HTML フォームを送信しています。奇妙な結果が得られます。
基本的な考え方は、いくつかの要素を含む Page というデータ構造を持っているということです。テンプレートには、ページの配列が取り込まれます。テンプレート内で各ページを繰り返し処理し、その内容を表示します。これらの各コンテンツは、それぞれのリンクとともに HTML フォーム内に埋め込まれます。リンクをクリックすると、それぞれのフォームが送信されます。
コード スニペットは次のとおりです。
{{range $index, $element := .Pages}}
<form action="/detailNews" id="readMore{{$index}}" method="post" name="readMore{{$index}}">
//displaying elements from each page
<div id="more">
<input name="query" type="hidden" value="{{printf "%s" .Title}}">
<a href="#" onclick="document.readMore{{$index}}.submit()">Read More</a>
</div>
</form>
{{end}}
コードはほとんどの場合、1 つの小さな問題で動作します。id および name 属性は、 readMore0 、 readMore1 などの期待どおりの出力を生成します。
問題は、onclick 属性が次のように設定されている "a" タグにあります: document.readMore 0 .submit()、document.readMore 1 .submit()など。0、1を囲むスペースに注意してください。リンクをクリックしても、それぞれのフォームが見つかりません。
この理由がわかりません。
どんな助けでも大歓迎です。
ありがとう、リプル