我有一件奇怪的事情正在发生,我正试图找到解决办法(不是自愿的,但我必须这样做)。我有一个显示或隐藏表格行的 javascript 函数。别人写的。它的工作原理是,当您单击表格行中的图像时,它会在其下方显示一行。再次单击图像会折叠该行。它的图像代码很简单:
<img blah blah blah onClick="ShowHide(this);">
我要做的是捕获该 img 元素和属性并将其作为查询字符串发送,以便当页面进行回发时,我可以在后面的代码中调用 javascript 函数 ShowHide(this) 并将图像属性传递给它。这样该行将在页面加载时显示。那有意义吗?所以我现在拥有的是:
function postbackwithModal(){
//image properties is what I need to figure out
window.location = "/Products/ProductDetail.aspx?element=" + imageProperties;
}
然后在后面的代码中:
string element = Request.QueryString["element"];
if (!element.IsNullOrEmpty())
{
ClientScript.RegisterStartupScript(GetType(), "hwa", "ShowHide(" + element + ");", true);
}
ShowHide() 函数如下所示:
function ShowHide(Element) {
var rowIndex = $(Element).parent().parent()[0].sectionRowIndex;
var item = $(Element).parent().parent().parent().children()[rowIndex + 1];
if ($(item).is(":visible") == true) {
$(item).hide(0, function () { $(Element).attr('src', '../Images/plus.png'); });
}
else {
$(item).show(0, function () { $(Element).attr('src', '../Images/minus.png'); });
// Loop though the images and set the src value to be the custom handler endpoint.
var ImageContainer = $(item).children().children().children()[3];
var Images = $(ImageContainer).find('img');
}
globalPlus = Element;
}