<SCRIPT language="javascript" type="text/javascript"> function openWindow1(){
      var address=window.showModalDialog("smallcx.php","cx","dialogWidth=340px;dialogHeight=270px");
document.form1.address.value=address; }
上面的是要弹出的子窗口!!!
现在的是动态生成的表格! <script language="javascript">
  function findObj(theObj, theDoc){    var p, i, foundObj;     if(!theDoc) theDoc = document;     if( (p = theObj.indexOf("?")) > 0 && parent.frames.length) {       theDoc = parent.frames[theObj.substring(p+1)].document;       theObjtheObj = theObj.substring(0,p);     }     if(!(foundObj = theDoc[theObj]) && theDoc.all)       foundObj = theDoc.all[theObj];     for (i=0; !foundObj && i < theDoc.forms.length; i++)        foundObj = theDoc.forms[i][theObj];     for(i=0; !foundObj && theDoc.layers && i < theDoc.layers.length; i++)     foundObj = findObj(theObj,theDoc.layers[i].document);     if(!foundObj && document.getElementById)        foundObj = document.getElementById(theObj);        return foundObj;} 
//添加一个参与人填写行 
function AddSignRow(){ //读取最后一行的行号,存放在txtTRLastIndex文本框中    
   
   var txtTRLastIndex = findObj("txtTRLastIndex",document); 
   var rowID = parseInt(txtTRLastIndex.value);
   var signFrame = findObj("SignFrame",document); 
   //添加行 
   var newTR = signFrame.insertRow(signFrame.rows.length); 
   newTR.id = "SignItem" + rowID; 
    
   //添加列:序号 
   var newNameTD=newTR.insertCell(0); 
   //添加列内容 
   newNameTD.innerHTML = newTR.rowIndex-1;
    
   //添加列:商品名称 
   var newNameTD=newTR.insertCell(1); 
   //添加列内容 
   newNameTD.innerHTML = "<input name='address" + rowID + "' type='text'  size='18' class='input1'> <a href='javascript:openWindow1()'>添加</a> ";
    
   //添加列:规格 
   var newEmailTD=newTR.insertCell(2); 
   //添加列内容
   newEmailTD.innerHTML = "<input name='guige' type='text' size='10' class='input1'>"; 
    
   //添加列:单位 
   var newTelTD=newTR.insertCell(3); 
   //添加列内容 
   newTelTD.innerHTML = "<input name='danwei' type='text' size='8' class='input1'>"; 
    
   //添加列:单价 
   var newMobileTD=newTR.insertCell(4); 
   //添加列内容 
   newMobileTD.innerHTML = "<input name='danjia'  type='text' size='8' class='input1'>"; 
    
   //添加列:件数 
   var newCompanyTD=newTR.insertCell(5); 
   //添加列内容 
   newCompanyTD.innerHTML = "<input name='jianshu'  type='text' size='10' class='input1'>"; 
      //增加列:数量
  var newSuliangTD=newTR.insertCell(6);
  //增加列内容
  newSuliangTD.innerHTML="<input name='shuliang' type='text' class='input1' size='10' >";
  //增加列:金额
  var newSaleTD=newTR.insertCell(7);
  //增加列内容
  newSaleTD.innerHTML="<input name='sale' type='text' class='input1' size='10' >"
  //增加备注
  var newBeizhuTD=newTR.insertCell(8);
  //增加列内容
  newBeizhuTD.innerHTML="<input name='beizhu' type='text' class='input1' size='25' >"
   //添加列:删除按钮 
   var newDeleteTD=newTR.insertCell(9); 
   //添加列内容
 newDeleteTD.innerHTML = "<div align='center' style='width:40px'><a href='javascript:;' onclick=\"DeleteSignRow('SignItem" + rowID + "')\">删除</a></div>";
    
   //将行号推进下一行 
   txtTRLastIndex.value = (rowID + 1).toString() ; 

//删除指定行 
function DeleteSignRow(rowid){ 
   var signFrame = findObj("SignFrame",document); 
   var signItem = findObj(rowid,document); 
    
   //获取将要删除的行的Index 
   var rowIndex = signItem.rowIndex; 
    
   //删除指定Index的行 
   signFrame.deleteRow(rowIndex); 
    
   //重新排列序号,如果没有序号,这一步省略 
   for(i=rowIndex;i<signFrame.rows.length;i++){ 
     signFrame.rows[i].cells[0].innerHTML = i.toString(); 
   } 
}//清空列表 </script> 
比如:我动态生成一行表格后,在商品名称这一列中,要点“添加”按钮后自动弹出一个对话框,选择合适商品后,把值在传给这一列。如何实现动态生成N行,仍然可以传值!

解决方案 »

  1.   

    AngleBabyHong  !!!有例子没?有例子发给我一下,我来学习下。谢谢了!
      

  2.   

    这样改一下,然后在弹出的窗口(即smallcx.php里,想取父页面的什么值都可以
    function openWindow1(){
                        var address=window.showModalDialog("smallcx.php",window,"dialogWidth=340px;dialogHeight=270px");
                    document.form1.address.value=address;                                    }
      

  3.   


    父页面和子页面间刷新,关闭,操作,总结资料收集 http://topic.csdn.net/u/20091112/09/342769c1-0abf-4f92-8699-7ac7d462e0cf.html
      

  4.   

    比如父页面:
    var a=1;
    function openWindow1(){ 
    var address=window.showModalDialog("smallcx.php",window,"dialogWidth=340px;dialogHeight=270px"); 
    document.form1.address.value=address; 
    }那么在smallcx.php里,用window.dialogArgument.a
    来访问父页面的a
    或者用
    window.dialogArgument.document.getElementById("")来取得父页面的控件