0

私はJavascriptシーン全体にかなり慣れていません。コードアカデミーが提供するようなオンラインのjavascriptチュートリアルに続いて、そこで学んだことや他のチュートリアルで読んだことを見ていきます。他のいくつかの投稿を読んで私を助けてみてください、しかし私はそれを理解することができません

これが私の質問です、

フォーム入力を取得してjavascriptファイルに送信しようとすると、javascriptファイルが文字列を返します。この文字列を使用してフレームをリロードします。私と私の友達のために、シンプルなChrome拡張機能を作成しようとしています。

「成績を表示」をクリックすると エラーが発生します:

No webpage was found for the web address: chrome-extension://gcgddggimojbfgpbdmpfkmiofmpinjgb/location.href=getURL(account)?

また、JavaScriptが正しく機能していないのか、「chromium」(私が呼んでいる)の世界の外にあるURLに送信する方法がわからないのかを判断できません。

これは私のhtmlファイルです:

<form action="location.href=getURL('account')">
    PSU Account (i.e. xyz123): <input type:"text" id="account">
   <input type="submit" value="View Grade!">
</form>

そしてこれは私のjavascriptファイルです:

function getURL(account) {
    var psuAccount = document.getElementById(psuAccount);
    // I changed strA to the ***.***.*** for this post
    var strA = 'https://***.***.***/section/Gradebook/Student/default.aspx?userId=';
    var strB = '&reportMode=true';
    var newURL = strA + psuAccount + strB);
    return(newURL);
}
4

1 に答える 1

1

私はこれがまさにその目的であると思います<form>...このようなもののためにJavascriptは必要ありません。試す:

<form action="https://***.***.***/section/Gradebook/Student/default.aspx" method="GET">
    PSU Account (i.e. xyz123): <input type="text" name="userId" />
    <input type="hidden" name="reportMode" value="true" />
    <input type="submit" value="View Grade!" />
</form>

action送信メカニズムは、フォームの属性を自動的に使用します。は「GET」であるため、属性を持つmethod要素のキーと値のペアのクエリ文字列も追加されます。したがって、フォームを使用すると、送信時のテキストボックスの現在の値として値を持つキー「userId」が追加されます。また、値が「true」のキー「reportMode」も追加されます。したがって、送信される最終的なURLは次のとおりです。<form>name

https://***.***.***/section/Gradebook/Student/default.aspx?userMode=true&userId=SOME_INPUT_STRING

Javascriptを使用する必要がある場合は、次を試してください。

<div>
    PSU Account (i.e. xyz123): <input type:"text" id="account" />
    <input type="button" value="View Grade!" onclick="getURL();" />
</div>

と:

function getURL() {
    var psuAccount = document.getElementById("account").value;
    var strA = 'https://***.***.***/section/Gradebook/Student/default.aspx?userId=';
    var strB = '&reportMode=true';
    var newURL = strA + psuAccount + strB;
    window.location.href = newURL;
}
于 2013-03-25T20:33:40.123 に答える