我检查了很多关于我的问题的博客答案,我也从这个网站找到了一些解决方案,我尝试了所有这些。但我不知道这是为什么?这些解决方案不能解决我的问题,我总是会出错。最后,我找到了一个我认为是正确的解决方案,因为在许多地方这个解决方案是被接受的。但这不能再次解决我的问题。
$("#<%=plusBttn.ClientID%>")
尝试此解决方案时出现此错误:plusBttn 在当前上下文中不存在。
我对按钮和文本框的客户端模式使用可预测模式。简单地说,我想通过控制我的按钮来更改显示在文本框(QuantityTxtbx)中的数量(minusBttn 用于减少 quantityTxtbx 值的值,而 plusBttn 类似地用于增加值)
实际上我的问题在于通过在 jscript 中使用 ClientID 来查找我的控件。
上面显示的代码都在Repeater,ItemTemplate中:
我在 asp.net 页面中的 jscript 代码:
$(document).ready(function () {
$("#<%=plusBttn.ClientID%>").click(function () {
var value = parseInt($("input[id$='QuantityTxtbx']").val());
value = value + 1;
$("input[id$='QuantityTxtbx']").val(value);
});
$("input[id$='#minusBttn_']").click(function () {
var value = parseInt($("input[id$='QuantityTxtbx']").val());
if (value > 1)
value = value - 1;
$("input[id$='QuantityTxtbx']").val(value);
});
});
还有我的控制;
<asp:Button ID="minusBttn" runat="server" Text="-" ClientIDMode="Predictable"/>
<asp:TextBox ID="QuantityTxtbx" runat="server" Text='<%#Eval("Quantity") %>' Enabled="False" EnableTheming="False" EnableViewState="False" Height="16px" Width="16px" Wrap="False"ClientIDMode="Predictable">1</asp:TextBox>
<asp:Button ID="plusBttn" runat="server" Text="+" ClientIDMode="Predictable" />
好的抱歉误会,这是我的浏览器端代码:
<script type="text/jscript">
$(document).ready(function () {
var plusBttn = $("input[id$='minusBttn']");
$("input[id$='#minusBttn_']").click(function () {
var value = parseInt($("input[id$='QuantityTxtbx']").val());
value = value + 1;
$("input[id$='QuantityTxtbx']").val(value);
});
$("input[id$='#minusBttn_']").click(function () {
var value = parseInt($("input[id$='QuantityTxtbx']").val());
if (value > 1)
value = value - 1;
$("input[id$='QuantityTxtbx']").val(value);
});
});
</script>
<input type="submit" name="ctl00$ContentPlaceHolder1$Repeater1$ctl01$minusBttn" value="-" id="ctl00_ContentPlaceHolder1_Repeater1_ctl01_minusBttn_0" />
<input name="ctl00$ContentPlaceHolder1$Repeater1$ctl01$QuantityTxtbx" type="text" value="2" id="ctl00_ContentPlaceHolder1_Repeater1_ctl01_QuantityTxtbx_0" disabled="disabled" style="height:16px;width:16px;" />
<input type="submit" name="ctl00$ContentPlaceHolder1$Repeater1$ctl01$plusBttn" value="+" id="ctl00_ContentPlaceHolder1_Repeater1_ctl01_plusBttn_0" />