【发布时间】:2014-03-27 01:34:50
【问题描述】:
我是 jQuery 新手...仍在学习它。但我需要一个快速的解决方案,以便能够为我的表格中的每个按钮注册点击事件。
GridView生成下表:
<div id="gridView">
<div>
<table cellspacing="0" border="1" style="border-color:Red;border-collapse:collapse;position:absolute; top: 290px;" id="MainContent_grvIsoSearchResults" rules="all">
<tbody><tr>
<th scope="col">ISONUM</th><th scope="col">OFFICE NAME</th><th scope="col">REGION</th><th scope="col">DIVISION</th><th scope="col">EMAIL ADDRESS</th>
</tr><tr>
<td>
<span style="display:inline-block;width:70px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvIsoNum_0">222222222 </span>
</td><td>
<span style="display:inline-block;width:200px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvIsoOfficeName_0">My Test</span>
</td><td>
<span style="display:inline-block;width:50px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvRegion_0">99</span>
</td><td>
<span style="display:inline-block;width:50px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvDivision_0">11111</span>
</td><td>
<input type="text" style="width:200px;" onclick="ResetMessage();" id="MainContent_grvIsoSearchResults_txtgvEmailAddress_0" value="mytest@google.com" name="ctl00$MainContent$grvIsoSearchResults$ctl02$txtgvEmailAddress">
<input type="submit" id="MainContent_grvIsoSearchResults_btnEmailUpdate_0" value="Update" name="ctl00$MainContent$grvIsoSearchResults$ctl02$btnEmailUpdate">
</td>
</tr><tr>
<td>
<span style="display:inline-block;width:70px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvIsoNum_1">CB2222001 </span>
</td><td>
<span style="display:inline-block;width:200px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvIsoOfficeName_1">DENNIS PETROVIC </span>
</td><td>
<span style="display:inline-block;width:50px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvRegion_1"></span>
</td><td>
<span style="display:inline-block;width:50px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvDivision_1">99801</span>
</td><td>
<input type="text" style="width:200px;" onclick="ResetMessage();" id="MainContent_grvIsoSearchResults_txtgvEmailAddress_1" value="dennis@dlgent.com" name="ctl00$MainContent$grvIsoSearchResults$ctl03$txtgvEmailAddress">
<input type="submit" id="MainContent_grvIsoSearchResults_btnEmailUpdate_1" value="Update" name="ctl00$MainContent$grvIsoSearchResults$ctl03$btnEmailUpdate">
</td>
</tr><tr>
<td>
<span style="display:inline-block;width:70px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvIsoNum_2">FT2222001 </span>
</td><td>
<span style="display:inline-block;width:200px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvIsoOfficeName_2">DENNIS PETROVIC </span>
</td><td>
<span style="display:inline-block;width:50px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvRegion_2"></span>
</td><td>
<span style="display:inline-block;width:50px;text-align:center" id="MainContent_grvIsoSearchResults_txtgvDivision_2">99801</span>
</td><td>
<input type="text" style="width:200px;" onclick="ResetMessage();" id="MainContent_grvIsoSearchResults_txtgvEmailAddress_2" value="dennis@dlgent.com" name="ctl00$MainContent$grvIsoSearchResults$ctl04$txtgvEmailAddress">
<input type="submit" id="MainContent_grvIsoSearchResults_btnEmailUpdate_2" value="Update" name="ctl00$MainContent$grvIsoSearchResults$ctl04$btnEmailUpdate">
</td>
</tr>
</tbody></table>
</div>
此表的每一行都有一个Button,我只需要确保当单击按钮时我会调用我的 Web 服务方法来更新同一行上的文本字段,但为此我需要先捕获那个事件。我想通过 jQuery/Ajax 来实现,虽然我可以用不同的方式来实现,但在这种情况下这是首选方式。
有什么建议吗?
谢谢
---更新---
我尝试了这里给出的每一个建议,但由于某种原因,当点击button 时,什么都没有发生。这可能与我的grid 在查看我的页面的源代码时没有为表格生成任何html 有关吗?之前提供的源码,我用的是firebug。
【问题讨论】:
-
$('input[type="submit"]').click(function(e) { /* do something */ });- 其中“做某事”可以是$.ajax()调用,而在函数$(this).closest('tr').find('something')中,您可以从单击按钮所在的同一行获取数据。
标签: javascript jquery ajax web-services firebug