タイトルがすべてを物語っていると思います。javascriptからテーブル内のInsertItemTemplate内のFormView内のコントロールにどのように焦点を合わせますか?
aspコードはこんな感じ
<asp:Panel ...>
<asp:UpdatePanel ...>
<ContentTemplate>
<asp:SqlDataSource ...>
<asp:FormView ID=FormView1 ...>
<InserItemTemplate>
<asp:Table ID=tblIns ...>
<asp:TextBox ID=txtInsMyBox ....>
</asp:TextBox>
</asp:Table>
</InserItemTemplate>
<EditItemTemplate>
<asp:Table ID=tblUpd ...>
<asp:TextBox ID=txtUpdMyBox ....>
</asp:TextBox>
</asp:Table>
</EditItemTemplate>
</asp:FormView>
<asp:ValidationSummary />
<div>
<asp:Button ID="btnSave" .../>
<asp:Button ID="btnCancel" .../>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Panel>
そして、ヘッダーにある JavaScript コードは次のようになります。
<script type="text/javascript">
function regainFocus() {
//this works
window.parent.document.getElementById("btnSave").focus();
//this also works
window.parent.document.getElementById("FormView1").focus();
//this does not work
window.parent.document.getElementById('<%#FormView1.FindControl("txtInsMyBox").ClientID%>').focus();
}
</script>
タグを「#」から「=」記号に変更しようとしましたが、違いはありませんでした。また、FormView 内で他のさまざまなコントロールを見つけようとしましたが、成功しませんでした。
FormView 内の Table 内のオブジェクトの FindControl の方法について、誰かが光を当てることができますか?