表格有2个提交按钮

时间:2015-06-15 18:48:22

标签: javascript html forms window.open

我有一个带有2个提交按钮的表单。表单生成一个URL。

表格的2个输出是:

  1. 它将URL写入隐藏的div,当他们单击“预览”按钮时显示
  2. 当他们点击“打开”按钮时,它会在新窗口中启动相同的URL。
  3. 我可以写入隐藏的DIV,因此预览功能可以正常工作。

    我的问题是:

    我无法通过“打开”按钮使window.open函数正常工作。

    当我点击按钮时,我得到" http://www.my_current_domain.com/undefined"当我最初在" firstfield"中进入另一个域时输入区域。

    以下是我的脚本示例:

    <form name="myForm" onSubmit="return myfunction();">
        <input  type="text" id="firstfield" name="firstfield"/>
        ... repreated 7 more times...
        <input type="submit" value="Preview"/>
        <input type="submit" onClick="window.open(myForm.results)" value="Open"/>
    </form>
    /* Hidden DIV */
    <div id="results">
    </div>
    

    以下是我的表单示例:

    printf()

    我现在已经在这个问题上工作了2天,现在我正在圈子里工作。

    任何建议都将受到赞赏。

    最诚挚的问候, 丹尼斯霍尔

1 个答案:

答案 0 :(得分:1)

您无法以您尝试的方式获得“结果”。您需要尝试通过ID引用获取它,如下所示:

<form name="myForm" onSubmit="return myfunction();">
    <input  type="text" id="firstfield" name="firstfield"/>
    ... repreated 7 more times...
    <input type="submit" value="Preview"/>
    <input type="submit" onClick="window.open(document.getElementById('firstField').value + '/' + document.getElementById('results').value);" value="Open"/>
</form>
/* Hidden DIV */
<div id="results">
</div>

编辑:为了确保window.open不认为它是相对URL,请确保它以协议开头,例如http://或https://。