2012-01-19 10 views
0

を提出してください...ここでJavascriptのフォーム私は働いていない、と私は理由を把握することができていない私のウェブサイト上のコードを持って失敗

コードです:今

if (self.location.href == top.location.href) { 
    document.fastform.submit(); 
document.getElementById(fastform).submit(); 
} 

フォーム以外のものをifステートメントに入れると、うまく動作します。私は、フォームはそれが動作しませんコードを提出行うとき、それはちょうどだ...ここ

は、フォームのコードは次のとおりです。ヘルプみんなのため

<form id="fastform" name="fastform" ACTION="/amember.php"> 
<INPUT TYPE="text" NAME="myurl" ID="myurl"> 
<input type="submit" /> 
</form> 

ありがとう!

これまでの提案はありませんが、私はgetelementbyidでfastformを引用符で囲むなど、いくつかのバリエーションを試しました。ここに私のjavascriptプログラム全体があります:

<script type="text/javascript"> 

function geturl() { 
var locate = document.location 
document.fastform.myurl.value = locate 
} 
window.onload = geturl; 

if (self.location.href == top.location.href) { 
var f=document.forms.fastform; f.submit(); 
} 

</script> 

ありがとうございました!

ここで提案されているコードの一部を使用しています。問題はif文が適切なタイミングで実行されていなかったことです。私はif文が最後に実行され、すべてが動作するように物事を移動しました。

<script type="text/javascript"> 

function geturl() { 
var locate = document.location 
document.fastform.myurl.value = locate 
getmeoutofhere() 
} 
window.onload = geturl; 

function getmeoutofhere() { 
    if (self.location.href == top.location.href) { 
    document.getElementById('fastform').submit(); 
    } 
} 
</script> 
<form id="fastform" name="fastform" ACTION="/amember.php" style="visibility:hidden;"> 
<INPUT TYPE="text" NAME="myurl" ID="myurl" /> 
<input type="submit" /> 
</form> 

答えて

0

あなたの機能でこれを使用することができます。

するvar F = document.forms.fastform。 f.submit();

これは完全にうまく動作しています

+0

この提案は機能しませんでした...私の元の投稿全体プログラムに追加されました。 –

+0

ウルのコード上の書き込みブロックであれば、私はそれは私がこのコードを使用しています細かい –

+0

を働いてチェックしています デモ <スクリプトタイプ=" テキスト/ javascriptの "> \t関数の実行() \t { \t \t IF(self.location.href == top.location.href) \t \t { \t \t \t var f = document.forms.fastform; \t \t \t f.submit(); \t \t} \t} \t \t \t <フォームID = "fastform" NAME = "fastform" ACTION = "/ amember.php"> \t \t \t \t –

0
document.getElementById('fastform').submit(); 

OR

var frm = document.getElementById('fastform'); 
frm.submit(); 
0

私はそれが問題だかどうかわからないんだけど、はラインと1つの問題は確かにあります。ここでは、完全な(機能)のコードは次のとおりです。

document.getElementById(fastform).submit(); 

問題は、私は、あなたが要素をidで取得しようとしていますが、には、すでにfastformで表される変数に文字列を割り当てていない限り、引用符付きの文字列が必要です。したがって、それはどちらかでなければなりません:

document.getElementById('fastform').submit(); 

または

var fastform = 'fastform'; 
document.getElementById(fastform).submit(); 

さらに、あなたはそれは最初に、設定されているとを思わ前にfastform変数で動作するようにしようとしているように見えますif内に含まれる行:

document.fastform.submit(); 

if (self.location.href == top.location.href) { 
    var fastform = document.getElementById('fastform'); 
    fastform.submit(); 
} 

参考文献:

関連する問題