2009-04-01 12 views
0

この問題の解決策を見つけるのは今や苦労しています。私は別の関数の中でもonclickで関数を呼び出そうとしています。パラメーターが静的な場合、イベントは正常に機能します。私は、グローバル関数から値を取得したい。例は次のとおりです。<a href >のグローバル関数からjavascript変数のパラメータを呼び出す

var dataxml = unescape(xml);  
var xmldoc = getDomAdapter().parseXml(dataxml); 
var rootnode = xmldoc.getElementsByTagName('result_set')[0]; 
var newsresult = rootnode.getElementsByTagName('item'); 
var pages = Math.round(newsresult.length/10); 

for (var p=1; p <= pages;p++){ 
    pagesref = pagesref+"<a href='#' onclick='newsdatainfo(xmldoc,newsresult,6,10);' >"+p+"</a> | "; 
} 

xmldocとnewsresultはどのように識別されますか?わからないエラーメッセージが表示されるためです。

あなたが私を助けるなら、私は素晴らしいことになるでしょう。

答えて

0

"document.xmldoc"を試しましたか?

どのようなスコープが変数定義ですか?それらがプライベート(関数内)である場合、それらはその関数の外部からは見えません。この場合、それらをグローバルにする(ドキュメントの有効範囲に入れる)か、onclickハンドラのクロージャを作成する必要があります。

0

クリックイベントを観察してみることもできます(ここでお気に入りのフレームワークを選択してください)。

プロトタイプ: $(ele).observe('click').newsdatainfo()と範囲をリファクタリングすると、コードがより洗練され、維持しやすくなります。

HTMLとJavascriptを混在させる場合、通常は間違ったトラックに表示されます。

関連する問題