【问题标题】:Post a Form to Popup window not to the parent将表单发布到弹出窗口而不是父级
【发布时间】:2012-06-15 07:06:35
【问题描述】:

我想发布一个表单弹出窗口。问题是,表单成功发布,但它也在父窗口上发布。我只想在弹出窗口中提交表单

'<input type= button value ="Submit Form" onclick="adNetworkForm()" >
<script>
function adNetworkForm(){ 
targetUrl = "http://somesite.com"    
    var myForm = document.createElement('form');
    myForm.method = 'post';
    //myForm.action = targetUrl;        

    var inpt1 = document.createElement('input');
    inpt1.setAttribute('name','a');
    inpt1.setAttribute('type', 'hidden')
    inpt1.value = "1"; 

    var inpt2 = document.createElement('input');
    inpt2.setAttribute('name','b');
    inpt2.setAttribute('type', 'hidden')
    inpt2.value = 2; 
    myForm.appendChild(inpt1);
    myForm.appendChild(inpt2);
    document.body.appendChild(myForm);
    myForm.submit(popitup(targetUrl));
    document.body.removeChild(myForm);
}

 function popitup(url) {
newwindow=window.open(url,'name','height=600,width=500');
if (window.focus) {newwindow.focus()}
return false;
}

</script>​'

JS Fiddle

【问题讨论】:

标签: javascript html popup


【解决方案1】:

您可以为表单分配一个 onsubmit 事件处理程序以调用一个函数,该函数在提交表单时弹出一个新窗口并将表单定位到该窗口,例如:

<form action="..." method="post" onsubmit="some_popup_post(this);">
<!-- form fields etc here -->
</form>

而 js 代码是:

function some_popup_post(form) {
    window.open('', 'formpopup', 'width=400,height=400,resizeable,scrollbars');
    form.target = 'formpopup';
}

你的意思是这样的吗..

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多