1

jQuery を使用して入力を送信し、別のページで処理しようとしていますが、うまく動作しません。

ネットワーク コンソールを開くと、GET メソッドが common_functions に設定されているのがわかりますが、変数が関連付けられていません。私はこれを取得しています

http://localhost/project/common_functions.php

のようなものの代わりに

http://localhost/project/common_functions.php?name=abcdef

これが私のHTMLです。入力を受け取る関数からアラートが出るから私の知る限り大丈夫です

<form method="post">
<table>
<tr><td>Project Name</td><td><input type = "textbox" name="project_name" id = "project_name" onkeyup = "get_name(this.value);" /></td></tr>
<tr><td>Project Description</td><td><input type = "textbox" name="project_name" id = "project_description" onkeyup = "get_description(this.value);"/></td></tr>
<tr><td><input type="submit" name="submit_project"></td></tr>
</table>
</form> 

ここにjQueryがあります。GET リクエストを送信しようとしています。

function get_name(name){
    var project_name = name;
    $.get('common_functions.php', function(name) {
        alert(project_name); //this displays the name
        $('#project_name').html(name);
    });
}

これだけでアラートが表示されるので、少なくとも onkeyup を確認していることがわかります。

4

2 に答える 2

3

データを送信していません。データをスクリプト名に追加するか、キーと値のペアとして送信できます。

$.get('common_functions.php', {'project_name': name}, function(data) {

また、コールバック関数で同じ変数名を使用しないと、混乱が生じるだけです。

于 2012-12-11T02:11:07.583 に答える
0

次のパラメーターを使用して get 関数を呼び出した場合に表示されることを期待しています。

var url = 'common_functions.php?project_name=' + Name;

$.get(url , function(name) {
    alert(project_name); //this displays the name
    $('#project_name').html(name);
});

2 番目のパラメーターは単なる return 関数です。これは、common_functions.php への呼び出しが返されたときに呼び出されるものです。

それを行う最も良い方法は、@jeroenが示したとおりです。

于 2012-12-11T02:16:36.620 に答える