1.新建div1,内置asp:dropdownlist id="ddlFylb" runat="server" Width="95px",用于选择相应的费用类别填入datagrid.
2.前台的代码
<1>
function trimstr(str) {
if (str == null) { return str; } return str.replace(/(^\s*)|(\s*$)/g, ""); }
<2>显示出div,并从datagrid中取出值填入div
function showDiv(e,i)
{
var top=e.offsetTop;
var left=e.offsetLeft;
var width=e.offsetWidth;
var height=e.offsetHeight;
while(e=e.offsetParent) { top+=e.offsetTop; left+=e.offsetLeft; }
//
var j=document.getElementById("t1").value;
var objDdl=document.getElementById("ddlFylb");
//
if(j<8){
var objInput=document.getElementById("intCell"+j).getElementsByTagName("input");
objInput[0].innerText = objDdl.options[objDdl.selectedIndex].text;
objInput[1].innerText=objDdl.options[objDdl.selectedIndex].value; } document.getElementById("t1").value = i;
document.getElementById("div1").style.display = "block"; document.getElementById("div1").style.position = "absolute"; document.getElementById("div1").style.left = left;
document.getElementById("div1").style.top = top;
var objNew=document.getElementById("intCell"+i).getElementsByTagName("input");
var strValue=objNew[0].value;
var size=objDdl.options.length;
//alert(strValue);
for(i=0;i<size;i++){
if (trimstr(objDdl.options[i].text)==trimstr(strValue)) {
objDdl.selectedIndex = i;
//objDdl.options[i].selected=true;
flag="1";
break; }}
if(flag=="0"){objDdl.selectedIndex=0;}
<3>隐藏掉div,并把div中的数填入datagrid
function hideDiv() {
var obj=document.getElementById("div1");
var objDdl=document.getElementById("ddlFylb");
var j=document.getElementById("t1").value;
if (obj.style.display=="none")return;
if(j<8){
var objInput=document.getElementById("intCell"+j).getElementsByTagName("input");
objInput[0].innerText = objDdl.options[objDdl.selectedIndex].text;
objInput[1].innerText=objDdl.options[objDdl.selectedIndex].value; } obj.style.display="none"; }
3.后台的代码(hidediv2()是隐藏掉另1个div)
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType ==
ListItemType.AlternatingItem)
{
e.Item.Cells[0].Attributes.Add("onclick","hideDiv();hideDiv2();");
e.Item.Cells[1].Attributes.Add("onclick","hideDiv();hideDiv2();");
e.Item.Cells[2].Attributes.Add("onclick","hideDiv();hideDiv2();");
e.Item.Cells[3].Attributes.Add("id","intCell" + e.Item.ItemIndex.ToString());
e.Item.Cells[3].Attributes.Add("onclick","hideDiv2();showDiv(this,"+e.Item.ItemIndex.ToString()+");");
e.Item.Cells[4].Attributes.Add("id","intCellxm" + e.Item.ItemIndex.ToString());
e.Item.Cells[4].Attributes.Add("onclick","hideDiv();showDiv2(this,"+e.Item.ItemIndex.ToString()+");");
e.Item.Cells[5].Attributes.Add("onclick","hideDiv();hideDiv2();");
}
}

浙公网安备 33010602011771号