我有一个 asp.net 页面 - 它在主页中呈现许多自定义控件 - 我有一个 asp.net 文本框 - 在某些情况下它必须是可编辑的,而在其他情况下它必须是只读的。在大多数情况下,它都按预期工作。我遇到了一个小错误。
因此,在我的“上一年”列中,渲染值应该仅为 1、2、3、0 等 - 正如您在渲染标记时所看到的那样,它会创建此标记:
<td id="ctl00_ctl00_PartContentPlaceHolderMain_ContentPlaceHolderMain_ctl00_ctrlComparison_ctrlComparisonCars1_ctl06">
<input name="ctl00$ctl00$PartContentPlaceHolderMain$ContentPlaceHolderMain$ctl00$ctrlComparison$ctrlComparisonCars1$tbPreviousNoManualCars" type="text" value="1" disabled="disabled" id="ctl00_ctl00_PartContentPlaceHolderMain_ContentPlaceHolderMain_ctl00_ctrlComparison_ctrlComparisonCars1_tbPreviousNoManualCars" class="tbPreviousNumber ui-widget-content ui-corner-all" style="width:50px;display:none;"><span>1</span><span>1</span>
</td>
所以问题是产生的双跨度。在呈现此控件的主页中,我想做类似的事情:
var test = $("#ctl00_ctl00_PartContentPlaceHolderMain_ContentPlaceHolderMain_ctl00_ctrlComparison_ctrlComparisonCars1_PreviousNoManualCars").children().find('span').val();
alert(test);
但是我的警报说未定义。是否可以使用与上述类似的方法删除其中一个跨度?
还有一种更好的方法来获取将要呈现的 id - 我刚刚从开发人员工具中提取了屏幕上的确切 ID,只是为了进行测试以尝试使其正常工作。
谢谢