javascript - 根据 gridview 行调用 javascript 函数

标签 javascript c# asp.net gridview

您好,我有一个 javascript 和 gridview 代码

<script type="text/javascript">
function changeImage() {
    var image = document.getElementById('myImage');
    if (image.src.match("bulbon")) {
        image.src = "Images/pic_bulboff.gif";
    } else {
        image.src = "Images/pic_bulbon.gif";
    }
}

<asp:GridView Width="100%" ID="GridView1" DataSourceID="SqlDataSource1" DataKeyNames="ID" AutoGenerateColumns="False" runat="server" CellPadding="4" ForeColor="#333333" GridLines="None">
    <AlternatingRowStyle BackColor="White" />
    <Columns>
        <asp:TemplateField HeaderText="ID">
            <ItemTemplate>
                <asp:Label ID="lbl1" runat="server" Text='<%#Eval("ID") %>' />
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Name">
            <ItemTemplate>
                <%#Eval("Name") %>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Desc">
            <ItemTemplate>
                <%#Eval("Desc") %>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="On Off">
            <ItemTemplate>
                <img id="myImage" onclick="changeImage()" src="pic_bulboff.gif" />
            </ItemTemplate>
        </asp:TemplateField>

并且生成的 gridview 将有大约 4 行,每次我点击不在第一行的图像时,它只会在第一行触发

关于如何解决这个问题有什么建议吗?

最佳答案

将您的 javascript 函数更改为,

<script type="text/javascript">
function changeImage(obj) {
    //var image = document.getElementById('myImage');
    if (obj.src.match("bulbon")) {
        obj.src = "Images/pic_bulboff.gif";
    } else {
        obj.src = "Images/pic_bulbon.gif";
    }
}

当你从网格中调用它时,调用如下,

onclick="changeImage(this);"

关于javascript - 根据 gridview 行调用 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35954838/

相关文章:

javascript - 下拉选择默认值

javascript - Node.js:从 Mongoose 查询返回正确的 JSON

c# - 确认消息框

asp.net - ValidationSummary 样式在 Post asp.net 的 IE 6 中不显示

c# - 如何在不遍历每个循环的情况下从字典对象中获取所有键(仅键)

javascript - 如何在 Pixi.js 中制作一手拉文字动画?

javascript - Datepicker默认年份错误

c# - 检测应用程序是否固定到任务栏

c# - Azure webjob调用内部服务

c# - 在返回 float 的方法中将结果转换为 float 会改变结果