0

我有一个包含五个字段和两个按钮的搜索表单。我想发布字段值以使用第二个按钮弹出。

我正在使用 get 方法,但它有编码问题; php在ie上获取数据编码

window.name = 'SearchCustomer';
   function OpenPopup( url, winname, features )
   {
    if(winname==''){
     window.open( url, winname, features, false );
     return;
    }
    if ( !findWindow( url, winname, features ) )
    {
     var handle = window.open( url, winname, features, false );
     if ( handle != null ) handle.focus();
    }
   }

   function findWindow( url, winname, features )
   {
    var handle = window.open( '', winname, features, false );
    if ( handle != null )
    {
     if (( handle.location != 'about:blank' ) && ( handle.location != '' ))
     {
      handle.focus();
      return true;
     }
    }
    return false;
   }


function OpenCustomer(customerid){
    OpenPopup('Customer/new.php?id='+ customerid +'', 'CustomerForm', 'channelmode=0, directories=0, fullscreen=0, width=550, height=460, location=0, menubar=0, resizable=0, scrollbars=1, status=0, titlebar=1, toolbar=0', false);
}

我无法添加 onSubmit 事件,因为搜索按钮应该在同一页面上工作。

我如何发布表单以弹出第二个按钮?

4

1 回答 1

1

@milesh您可以通过正确的URL编码来做到这一点,这样IE就不会中断或将表单字段值存储在与“窗口”对象相关联的javascript变量中。稍后,一旦您的弹出窗口被加载,然后从子窗口访问这些变量。

例如,在父窗口中,

window.myform = { field1:"searchtext", field2:"somecategory"}

现在您可以在子窗口中获取这些变量,如下所示,

alert(opener.myform);

注意:不是确切的代码。这是实现目标的一些通用想​​法。

于 2013-03-05T10:49:41.477 回答