我有一个隐藏字段,其中包含以下标记:
<input type="hidden" name="ctl00$ContentPlaceHolder1$LinksOverview1$ProductView$ctrl1$ctl01$ctl00$DescriptionOfLink$QuestionDivInfo" id="ContentPlaceHolder1_LinksOverview1_ProductView_ctrl1_ctl00_3_DescriptionOfLink_3_QuestionDivInfo_3" value="ContentPlaceHolder1_LinksOverview1_ProductView_ctrl1_ctl00_3_questionMark_3" />
我的隐藏字段的值与我拥有的范围的ID相同:
<span id="ContentPlaceHolder1_LinksOverview1_ProductView_ctrl1_ctl00_3_questionMark_3" class="questionMarkLayout">(?)</span>
在呈现代码之前,我不知道我的span的ID,但我可以访问隐藏字段的值。
使用jQuery,我想:
到目前为止,我已经尝试过:
<script type="text/javascript">
$(document).ready(function () {
alert('<%#QuestionDivInfo.ClientID %>');
$('<%#QuestionDivInfo.ClientID %>').val().mouseover(function (e) {
$('<%#HintDiv.ClientID %>').show();
});
$('<%#QuestionDivInfo.ClientID %>').val().mouseleave(function (e) {
$('<%#HintDiv.ClientID %>').hide();
});
});
</script>
但它不起作用。
任何提示? :)
答案 0 :(得分:2)
使用此代码:
$(document).ready(function () {
alert('<%#QuestionDivInfo.ClientID %>');
var span=$("#"+$('<%#QuestionDivInfo.ClientID %>').val());
$(span).mouseover(function (e) {
$('<%#HintDiv.ClientID %>').show();
});
$(span).mouseleave(function (e) {
$('<%#HintDiv.ClientID %>').hide();
});
});
答案 1 :(得分:1)
事件应绑定以控制不控制值,
$('<%#QuestionDivInfo.ClientID %>').val().mouseover(.........
应该是
$('#'+$('#<%QuestionDivInfo.ClientID %>').val()).mouseover(.........
您的代码将是
$(document).ready(function () {
alert('<% QuestionDivInfo.ClientID %>');
$('#'+ $('#<%QuestionDivInfo.ClientID %>').val()).mouseover(function (e) {
$('#<%HintDiv.ClientID %>').show();
});
$('#'+$('<%#QuestionDivInfo.ClientID %>').val()).mouseleave(function (e) {
$('#<%HintDiv.ClientID %>').hide();
});
});
答案 2 :(得分:0)
<script type="text/javascript">
$(document).ready(function () {
var hiddenFieldValue = $('input[id$=QuestionDivInfo_3]').attr('value');
alert(hiddenFieldValue);
var spanValue = $('span[id$=' + hiddenFieldValue + ']').html();
alert(spanValue);
});
</script>
试试这个....它对我有用