2011-06-28 13 views
0

document.getElementByIdを関数内で使用しているときに奇妙な問題が発生しています。 モーダルウィンドウ(Highslide)にフォームがあります。フォームが送信されている間、私は関数fooを呼び出しています。fooの中で、フォーム要素をIDで選択するのはdocument.getElementByIdです。しかし、値を提示せず、ただデフォルト値を返します。 jQuery htmlを試しましたが、動作しません。関数内でdocument.getElementByIdが機能しない

私のコード

function foo(){ 
    var name = document.getElementById('yname').value; 
    // it just returns default value(null). 
} 

<form onsubmit="return foo();">.......</form> 

これらのことは、Wordpressのテーマで起こっています。

Working location

Modal form is existing here

+0

は、あなたが関数から名前を返すみましたidを提供すべきですか? 'return name; 'を入れる機能します。 –

+0

あなたの名前フィールドのIDは 'yname'です。 – Town

答えて

0

あなたは、ページ上の任意の場所に

id="name" 

を持っていない

+0

申し訳ありません実際のコードでynameを使用しました – Gowri

2

(ライブコードを見てみると)であることと、フォームフィールドをつかむしようとする試みidynamenameの代わりにynameを試しましたか? (あなたのHTMLにはinput name="name" id="yname"が含まれています)。

+0

はい名前を入れてください – Gowri

+0

その場合、フォームが表示されている間にidがynameの2つの要素があります。 'onsubmit =" return avalid(this) "'フォームリファレンスをjavascriptハンドラに渡す方が良いでしょう。次に、 'form.elements ['name']。valueなどを使って値を取得できますあなたが 'function avalid(form)... 'を変更したと仮定しても – searlea

+0

それはありがとう、私は+ 1を与えましたが、何が間違っていますか.Ajaxレスポンスを出力したいからです。 "ajax_validation_response" .please help me! – Gowri

0

getElementByIdはないname属性

+0

ページソースをご覧くださいavalidは実際のコードです – Gowri

関連する問題