Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取预填充字段的值_Javascript_Jquery_Django Forms - Fatal编程技术网

Javascript 获取预填充字段的值

Javascript 获取预填充字段的值,javascript,jquery,django-forms,Javascript,Jquery,Django Forms,如果已填充日期,如何获取字段#id_start_date的值 我试过这个: var sd = $("#id_start_date").val(); $("span.start_date").text(sd); 还尝试将其放入.change()或.click()中,但由于程序更改而不是手动更改,因此无法运行 编辑 这是我的html的表单部分 .... <tr> <th>Start date</th> <td><input id

如果已填充日期,如何获取字段#id_start_date的值

我试过这个:

var sd = $("#id_start_date").val();
$("span.start_date").text(sd);
还尝试将其放入.change()或.click()中,但由于程序更改而不是手动更改,因此无法运行

编辑

这是我的html的表单部分

....
<tr>
    <th>Start date</th>
    <td><input id="id_start_date" type="text" class="datepicker date_field" name="start_date" size="14" /></td>
</tr>
....
。。。。
开始日期
....
有什么想法或建议吗

Steve

如果该日期在
span
中,那么您应该可以这样做

$(“#id_start_date span.start_date”).text()

看看你刚刚发布的html,你可以这样做


$('id#start_date').val()

如果是
输入文本
您的代码将正常工作:

var sd = $("#id_start_date").val();
但如果是文本(字符串字段)

您必须使用:

var sd = $("#id_start_date").text();

我发现了我的问题所在,我想我会把它贴在这里,以防其他人遇到类似的问题

有一个AJAX调用,其中包含开始日期,所以我将代码放在AJAX调用中,它成功了

$.ajax({
        type: "POST",
        url: "{% url whatever %}",
        dataType: "json",
        data: q,
        success: function(json) {
            $("#id_maturity_date").val(json.maturity_date);
            var mat = $("#id_maturity_date").val();
            $("span.mat_date").text(mat);

            $("#id_start_date").val(json.start_date);
            var sd = $("#id_start_date").val();
            $("span.start_date").text(sd);

            $("#id_term_years").val(json.term_years);
            $("#id_term_months").val(json.term_months);
            ...
        }
    });
出于某种原因,.change()在以这种方式填充时不会触发,因此除非我进入AJAX调用,否则永远无法获取值


谢谢大家的输入。

你能同时显示html部分吗?不是模板代码——浏览器接收到的实际html。我没有得到开始日期的值。好吧,如果你在
输入
中添加了一些内容,你的代码会正常工作,但是如果是db结果或其他任何内容,你需要在回拨中设置代码,当输入将具有某个值时。所有这一切都取决于您何时启动此事件。日期不在范围内。我把这个值分配到右边。我真正的问题是如何触发.change()。当它自动填充时,不会触发更改。只有当我要手动更改它之后,才会由我的费率表填充,他们点击一个费率,然后将所有数据输入表单。然后它获取当前日期并将其放置在date字段中。