1
<body>
    <form name="testarea" method="post" action="?URL">
        <input type="text" id="test1" name="URL"/>
        <input type="submit" value="Submit"/>
    </form>
</body>

今私はしたい:

  1. URL のテキスト ボックスにユーザーが入力した値を使用します。
  2. action=''をクリックしてフォームに渡すためSubmit。これには、送信時に同じ URL が渡される必要があり、同じ iFrame で URL が起動されます。
4

3 に答える 3

1

jQueryを使用して、フォームのアクション属性を次のように設定できます。

var url = $("#test1").val();
$(form).attr("action", url)

jqueryを使用できない場合は、次の投稿を参照できます。

http://netfactory.dk/2007/09/28/changing-a-form-submit-url-with-javascript/

于 2012-11-29T12:02:07.183 に答える
0

Postの代わりにGetメソッドを使用できます

<body>
<form name ="testarea" Method="Get" Action="youpage.html">
<input type='text' id='test1' name='URL'/>
<input type='submit' value='Submit'/>
</form>

アップデート:

これが正しいとは知りませんでしたが、このように試すこともできます

<input type='text' id='test1' name=''/>
<input type='button' value='Submit' onclick="window.location.href=window.location+'?'+document.getElementById('test1').value;"/>
于 2012-11-29T12:09:27.483 に答える
0

フォームのに次のスニペットを配置します。

function addListener(element, eventName, handler) {
    if (element.addEventListener) {
        element.addEventListener(eventName, handler, false);
    }
    else if (element.attachEvent) {
        element.attachEvent('on' + eventName, handler);
    }
    else {
        element['on' + eventName] = handler;
    }
}

var form = document.forms['testarea'];
var input = document.getElementById('test1');

addListener(form, 'submit', function () {
   var url = input.value;
   form.setAttribute('action', url);
});

私はそれをテストしていませんが、動作するはずです。純粋な JavaScript を記述する代わりに、jquery などのライブラリを使用することをお勧めします。生活が楽になり、クロスブラウザーの問題が少なくなります。

jQuery では、コードは次のようになります。

​$('form[name="testarea"]').on('submit', function () {
    var url = $('#test1').val();
    $(this).attr('action', url);    
});​​​​​​​​​​​​​​​​​​​​​​
于 2012-11-29T12:29:53.433 に答える