为什么可以';我不能使用jquery查找标签文本吗?
我用通配符选择它们,因为它在母版页中。val1工作得很好(文本框),但val2(标签)永远得不到我需要的东西。我还尝试了val2.text、val2.val、valueOf(val2)、val2.html、val2.attr(“text”)。我要么得到Object[Object],未定义,要么得到一些长函数字符串为什么可以';我不能使用jquery查找标签文本吗?,jquery,asp.net,Jquery,Asp.net,我用通配符选择它们,因为它在母版页中。val1工作得很好(文本框),但val2(标签)永远得不到我需要的东西。我还尝试了val2.text、val2.val、valueOf(val2)、val2.html、val2.attr(“text”)。我要么得到Object[Object],未定义,要么得到一些长函数字符串 $("[id$=HealthCareReimbursementPerPayPeriodTxt]").blur(function (evt) { try { val1 = (th
$("[id$=HealthCareReimbursementPerPayPeriodTxt]").blur(function (evt) {
try {
val1 = (this.value);
alert(val1);
val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]");
alert(val2.value);
}
catch (e) { }
});
如果有帮助,我将在代码中设置此标签的文本,您需要更改此设置
<asp:Label ID="HealthCareReimbursementNumPayPeriodsTxt" runat="server">
借
jQuery选择器不会直接返回DOM对象。您还可以使用类选择器
val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]")[0];
试试这个:
$(function(){
$(".healthCareReimbursementTotalTxt").blur(function (evt) {
try {
val1 = (this.value);
alert(val1);
val2 = $(".healthCareReimbursementTotalLbl")[0];
alert(val2.value);
}
catch (e) { }
});
});
您说过标签将被更改为
,而该标签没有val
属性。我认为您需要使用.html()
,因为您需要标记之间的文本
i、 e
val2=$(“[id$=HealthCareRegregatementNumpayperiodText]”)html()
或者val2.html
或者val2.text
应该可以工作.val
仅适用于包含值(如HiddenFields)的输入和其他控件,而不适用于仅转换为HTML元素(如标签)的控件。试试这个
val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]")[0].val();
这是一个
ClientID
问题吗?我不这么认为?我不确定它到底是如何工作的,但是如果我使用文本框的话,为什么标签会出问题呢?它们紧挨在一起。val2
被设置为所有对象的数组,这些对象的ID以HealthCareRegregatementPerPayPeriodTXT
结尾,但您包含的
的ID(HealthCareRegregatementTotalBL
)与selector@jimmym715对不起,这是我问题中的一个错误,我已经修好了。这不起作用。它仍然得到了所有相同的结果,这让我相信它找到的标签很好。你需要使用val2[0]。value
而不是val2。value
这是文档就绪处理程序中的js代码,还是至少在标签定义之后定义的?我想一定是这样,否则它为什么会得到我的文本框?它们紧挨在一起。使用firebug或任何其他浏览器插件浏览html,并检查标签是否具有类HealthCareRegregatementTotalBL
。这段代码相当标准,所以可能有些东西你没有告诉我代码>?
$(function(){
$(".healthCareReimbursementTotalTxt").blur(function (evt) {
try {
val1 = (this.value);
alert(val1);
val2 = $(".healthCareReimbursementTotalLbl")[0];
alert(val2.value);
}
catch (e) { }
});
});
val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]")[0].val();
$("[id$=HealthCareReimbursementPerPayPeriodTxt]").blur(function (evt) {
try {
val1 = (this.value);
alert(val1);
// first try wether your are getting this elemnt or not
alert($("[id$=HealthCareReimbursementNumPayPeriodsTxt]").length);
if ($("[id$=HealthCareReimbursementNumPayPeriodsTxt]").length > 0) {
alert("item found");
val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]");
alert(val2.val());
// if it does not work try
// alert(val2.html()); or alert(val2.text);
}
else {
alert("item not found");
}
}
catch (e) { }
});