1

可能重复:
您如何发布到 iframe?

我有一个表单,我想做两件事 - 使用一个按钮(有效)提交标准表单请求,并有第二个按钮(也可以部分有效)在页面内打开一个 iframe,其值为来自附加到 iframe URL 的表单。

这是我正在使用的脚本:

<script language="JavaScript" type="text/javascript"> 
function makeFrame() { 
ifrm = document.createElement("IFRAME"); 
ifrm.setAttribute("src", "https://www.hostname.com/filepath"); 
ifrm.style.width = 340+"px"; 
ifrm.style.height = 630+"px"; 
document.body.appendChild(ifrm); 
} 
</script>

和形式:

<FORM action="https://www.hostname.com/filepath" method="POST" name="form" id="viewGift">
  <P><br>
    <LABEL for="giftId">giftId: </LABEL><INPUT type="text" name="giftId"><BR>
    <INPUT type="radio" name="opt1" value="1" checked> opt1<BR>
    <INPUT type="radio" name="opt2" value="2"> opt2<BR>
    <INPUT type="radio" name="opt3" value="3"> opt3<BR>
    <INPUT type="radio" name="opt4" value="4"> opt4<BR>
    <INPUT type="button" value="Send Gift" onclick="formSubmit()">
    <INPUT type="button" value="Show Gift" onclick="makeFrame()">
 </P>
 </FORM>

我的表单正确提交,但我不知道如何使用 Show Gift 按钮将表单 giftId 值传递给 iframe URL。如果我对 URL 进行硬编码,“显示礼物”按钮就可以正常工作,但这对页面的用途没有多大帮助。

基本上,我需要 Show Gift 按钮来创建一个 URL 为https://www.hostname.com/filepath/giftId的 iframe ,其中 giftId 由用户输入。

4

1 回答 1

0

这应该有效:

function makeFrame() {
    var ifrm = document.createElement("IFRAME");
    var gift_id=document.getElementById('viewGift').elements['giftId'].value
    ifrm.setAttribute("src", "https://www.hostname.com/filepath/"+gift_id);
    ifrm.style.width = 340 + "px";
    ifrm.style.height = 630 + "px";
    document.body.appendChild(ifrm);
}
于 2013-01-27T22:00:59.857 回答