预填表格(无法控制表格代码)

时间:2012-05-16 11:15:36

标签: php javascript jquery

我正在使用表单插件/插件,我无法控制表单的生成方式。

表单生成HTML,如下所示:

<form>
<label>First Name</label><input name="Question25" type="text" value="" />
<input class="formBlockSubmitButton" name="add" type="submit" value="Submit" />
</form>

我想预先填写一些表单值,但我不能写,比如说

<input name="Question25" type="text" value="<?php echo $my_value; ?>" />

因为表单插件会生成该HTML。我可以在这个块之前编写PHP或Javascript,有没有办法搜索名称为“Question25”的输入,然后在块出现时预先填充它?

4 个答案:

答案 0 :(得分:3)

您可以使用jQuery和.val()方法:

<script type="text/javascript">
    $(function() {
        $('input[name="Question25"]').val('some value');
    });
</script>

如果值必须来自服务器:

<script type="text/javascript">
    $(function() {
        var obj = <?php echo json_encode(array('value' => $my_value)); ?>;
        $('input[name="Question25"]').val(obj.value);
    });
</script>

答案 1 :(得分:1)

您可以将所有要搜索的值作为字段名/值数组进行搜索,然后发出一个函数,尝试将这些值映射到这些字段。

<script type="text/javascript">
var values = [{fieldName:'Question25', value:'MyValue'}]; // iterate through your values in PHP and generate the {fieldName:'value',value:'value'} object

$(function() {
    $.each(values, function(index, item) {
         $('input[name=' + item.fieldName + ']').val(item.value);
    });
});

</script>

答案 2 :(得分:0)

var value='<?php echo $my_value; ?>'
$("input:text[name='Question25']").val(value);

使用类似的东西

答案 3 :(得分:0)

使用Javascript。使用jQuery,您可以执行以下操作:

$("input[name=Question25]").val(my_value);

然后,您可以使用echo将PHP vairables插入到Javascript中,使用AJAX或任何您需要的内容加载它们。