1

グリッドビューに(a)があり、コンパイルされません:

  <asp:GridView ID="gvProjects" runat="server" OnSorting="gvProjects_Sorting"
            AutoGenerateColumns="False" CssClass="table table-hover table-striped"
            GridLines="None">
            <Columns>
                <asp:TemplateField HeaderText="Title" SortExpression="ProjectTitle">
                    <ItemTemplate>
                           <a href="#myModal" id="remove_emp_btn" onclick="go('projectFrame','ProjectViewFrame.aspx?id=<%# Eval("ProjectID") %>')" 
                               runat="server" data-toggle="modal">'<%# Eval("ProjectTitle") %>'</a>
                    </ItemTemplate>
                </asp:TemplateField>

私はaspコントロールを使用することを余儀なくされていますか、それともコードに何か問題がありますか?

ありがとう

サーバータグが適切に形成されていないことを示しています。

問題は次のようです:

 onclick="go('projectFrame','ProjectViewFrame.aspx?id=<%# Eval("ProjectID") %>')" 
4

3 に答える 3

2

属性のすべてのコンテンツをonclickサーバータグでラップする必要があります。そうすれば<%# %>、属性runat="server"を削除できます。また、二重引用符はエスケープする必要があります。

<asp:GridView ID="gvProjects" runat="server" OnSorting="gvProjects_Sorting"
AutoGenerateColumns="False" CssClass="table table-hover table-striped"
GridLines="None">
<Columns>
    <asp:TemplateField HeaderText="Title" SortExpression="ProjectTitle">
        <ItemTemplate>
           <a href="#myModal" id="A1" onclick='<%# "go(\"projectFrame\", \"ProjectViewFrame.aspx?id=" + Eval("ProjectID").ToString() + "\" )" %>'
                    data-toggle="modal">'<%# Eval("ProjectTitle") %>'</a>
        </ItemTemplate>
    </asp:TemplateField>

別:

Evalメソッドの2番目のパラメーターを使用して文字列をフォーマットすると、マークアップが読みやすくなります。

   <a href="#myModal" id="remove_emp_btn" onclick='<%# Eval("ProjectID", "go(\"projectFrame\", \"ProjectViewFrame.aspx?id={0}\")") %>'
                data-toggle="modal">'<%# Eval("ProjectTitle") %>'</a>
于 2013-02-21T15:46:08.693 に答える
0

テキストの真ん中にevalを入れて運が良かったことは一度もありません。私はしばしばこのようにレンダリングすることに頼りました:

"<%= "go('projectFrame','ProjectViewFrame.aspx?id=" + (string)Eval("ProjectID") %>"
于 2013-02-21T15:46:21.887 に答える
0

<%#%>構文を使用して、runat=serverを削除します。

 <a href="#myModal" id="remove_emp_btn"  OnSorting="gvProjects_Sorting"
                           onclick='<%# "go('projectFrame','ProjectViewFrame.aspx?id=" + Eval("ProjectID").ToString() + ")" %>'
                               data-toggle="modal">'<%# Eval("ProjectTitle") %>'</a>
于 2013-02-21T15:48:51.080 に答える