这是我的html标签,
<asp:Label runat="server" ID="rdPayOutstanding"></asp:Label><br />
我希望检索span标签内的值并将其显示在文本框中,我已经编写了下面的代码,但它似乎无法正常工作。
任何人都可以帮我解决我的代码问题吗?
$(document).ready(function () {
var amount = $('#rdPayOutstanding').text().toString();
console.log(amount);
$('.textfield').val(amount);
$('.jsPayOutstanding').click(function () {
$('.textfield').val(amount);
});
$('.jsPaySomeBalance').click(function () {
// alert('yes');
$('.textfield').val('');
});
});
答案 0 :(得分:0)
问题是您正在使用ASP.NET,当控件呈现时,ASP.NET引擎会修改生成的HTML元素的ID。
您可以添加属性ClientIDMode以获取“正确”ID:
<asp:Label runat="server" ID="rdPayOutstanding" ClientIDMode="Static"></asp:Label><br />
另一种方法是使用属性CssClass并按类选择:
<asp:Label runat="server" ID="rdPayOutstanding" CssClass="rdPayOutstanding"></asp:Label><br />
答案 1 :(得分:0)
尝试使用标签的客户端ID获取值,如下所示
var amount = $('#<%=rdPayOutstanding.ClientID%>').val();
console.log(amount);
答案 2 :(得分:0)
可以将CSS
class
分配给ASP.NET
Label
<asp:Label runat="server" ID="rdPayOutstanding" class="mylabel"></asp:Label>
然后你可以做这样的事情
var amount = $('.mylabel').text();
注意:强>
您无法获取该标签值的原因是因为其客户端ID
在呈现时可能已更改,请尝试检查该元素并找到其ID
。
答案 3 :(得分:-1)
.textfield
是否为表单元素?
$( '文本字段。')VAL(量);
设置元素的value属性,而不是文本
如果它不是表单元素,请尝试
$( '文本字段。')文本(量);
或者如果您想要添加标记:
$('。textfield')。html('&lt; strong&gt;'+ amount +'&lt; / strong&gt;'); // 要么 任何