次のようにコントローラーから送信されるAJAXリクエストがあります。
コントローラーで:
respond_to do |format|
format.js {render 'show_data'}
end
show_data.js.erb
$('#foo').html("<%= render partial: "foo/show_data" %>");
部分的に: _show_data.html.erb
<table> <tr> <th><%= "Name" %> </th> <th><%= "ID" %> </th> </tr> <tr> <td> <%= "Steve" %> </td> <td> <%= "1"%> </td> </tr> </table>
上記の表は、すべてのコードが 1 行にある場合にのみ適切にレンダリングされます。Return キーを押しても、AJAX リクエストが通過した後、ターゲット div 内に表示されません。これは、先ほど例として使用した table タグに固有のものではありません。複数の行がある場合は常に表示されません。
動作時のレスポンス:
$('#proto').html("<table> <tr> <th>Name </th> <th>ID </th> </tr> <tr> <td> Steve </td> <td> 1 </td> </tr> </table>");
うまくいかないときの対応:
$('#proto').html("<table> <tr> <th>Name </th> <th>Rep ID </th> </tr> <tr> <td> @rep.name </td> <td> @rep.id </td> </tr> </table>
");
AJAX リクエストを作成するこの同じシステムは、私の別のアプリでも正常に機能します。どんな助けでも大歓迎です、どうもありがとう!