0

N00b アラート; 私は危険であることを十分に知っているので、私の無知を許してください...私はここや他の場所で関連するすべての質問を経験しましたが、回答に確実に含まれている答えを理解できないようです:-(

関連するレコードの内容をフォームに表示するページにレコード ID を投稿しています。HEAD セクションでこのスクリプトを使用して、レコードを正しく取得しています (アラートを使用して確認) (jquery 1.9 も呼び出されます)。

<script type="text/javascript">
function getSelectedCustomer () {        
    ...use the id to get the right record...
    databaseAPI.callback = function() {
        if (databaseAPI.error) {
            alert("Database Error: " + databaseAPI.error);
            } 
        else {
            var customerRecord = databaseAPI.result;
            alert("Test Callback: " + new String(customerRecord.full_name));
            $("#quoteForm").load(customerRecord);
            }
        return;
        };
    databaseAPI.ajaxGet();        
    }
window.onload = getSelectedCustomer; 
</script>

...そして、読み込まれる BODY 内のフォーム:

<form method="post" id="quoteForm" action="process_quote.php">
<table>
<tbody>
<tr>
    <td>Name</td>
    <td><input type="text" value="<?php $customerRecord['full_name']; ?>" name="full_name"></td>
</tr>
...other bits of the form...
<tr>
    <td>
        <input type="submit" value="Submit">
    </td>
</tr>
</tbody>
</table>
</form>

私は、さまざまなものを一緒に誤って変更していることを知っています。誰かが私に何をすべきか教えてもらえますか?

マイケルの答えは、フォームの INPUT フィールドを解決しました。SELECT フィールドもあるとは言いませんでした:

<select size="0" name="email_sent">
    <option value="No">No</option>
    <option value="Yes">Yes</option>
</select>

INPUT を SELECT に変更すると機能します。

4

1 に答える 1

0

不足しているのは、コードが実行されている場所です。PHP コードは、ブラウザに送信される前にサーバー上で実行されています。次に、Javascript がブラウザによってレンダリングされます。Javascript と PHP の間で変数をやり取りすることはできません。

名前に Javascript を挿入します。すでに jQuery を使用しているようですので、面倒な作業はすでに完了しています。value="<?php $customerRecord['full_name']; ?>"PHP ファイルから を削除し$("#quoteForm").load(customerRecord);$("#quoteForm input[name='full_name']").val(customerRecord.full_name);

正確な状況に応じて、いくつかのバリエーションが必要になる場合があります。少なくとも、それはあなたを正しい道に導くはずです。

于 2013-04-03T20:30:13.900 に答える