加载时以HTML格式显示数据

时间:2013-04-03 20:21:53

标签: javascript html forms

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>

我知道我错误地把各种各样的东西混在一起。有人可以让我理解该做什么吗?

Michael的回答解决了表单中的INPUT字段。没有提到我也有SELECT字段:

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

将INPUT更改为SELECT有效。

1 个答案:

答案 0 :(得分:0)

您缺少的是执行代码的地方。在发送到浏览器之前,PHP代码正在服务器上执行。然后,浏览器呈现Javascript。你不能在Javascript和PHP之间来回传递变量。

您想要使用Javascript注入名称。我看到你已经在使用jQuery了,所以已经为你完成了繁重的工作。从PHP文件中删除value="<?php $customerRecord['full_name']; ?>",并将$("#quoteForm").load(customerRecord);替换为$("#quoteForm input[name='full_name']").val(customerRecord.full_name);

应该有效,根据您的具体情况可能需要一些变化。至少它应该让你走上正确的道路。