Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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 Django+JQuery.val()未设置_Javascript_Jquery_Django - Fatal编程技术网

Javascript Django+JQuery.val()未设置

Javascript Django+JQuery.val()未设置,javascript,jquery,django,Javascript,Jquery,Django,使用.val设置JQuery对象的值时遇到一些问题。我可以在页面加载时获得初始值,但是当我更改输入并进行页面刷新时,我获得的值与初始加载时没有变化。以下是一些片段: HTML: JS: 我看到的行为不是我所期望的。 当我最初加载页面并单击“打印”按钮时,它会正确地进入Django代码,并且应该是pay_period_start。当我点击prev_period(上一个周期)按钮时,页面会自动刷新,并且pay period start(支付周期开始)中的文本是正确的,但当我点击“Print”(打印)

使用.val设置JQuery对象的值时遇到一些问题。我可以在页面加载时获得初始值,但是当我更改输入并进行页面刷新时,我获得的值与初始加载时没有变化。以下是一些片段:

HTML:

JS:

我看到的行为不是我所期望的。 当我最初加载页面并单击“打印”按钮时,它会正确地进入Django代码,并且应该是pay_period_start。当我点击prev_period(上一个周期)按钮时,页面会自动刷新,并且pay period start(支付周期开始)中的文本是正确的,但当我点击“Print”(打印)按钮时,Django代码会被调用,pay_period(支付周期开始)与第一次一样

我试过用各种方式做类似的事情,但我认为这是我所做的最接近的。调试时,我看到代码碰到了updateDates中设置的断点,但是.val调用没有做任何事情。在firefox控制台中运行,$pay\u period\u start.value返回未定义。直接从控制台运行updateDates中的代码后,它仍然返回undefined


有什么提示吗?

您希望Django如何知道表单外输入字段的更改?我以前在表单中有它,但这也不起作用。我希望{{pay_period_start}}是一个超出表单范围的变量,所以这不重要。奇怪的是,当按下上一个/下一个emp按钮时,单击“打印”确实会传入正确的员工ID,请稍等片刻。你认为{{pay_period_start}}是一个变量,可以使用Javascript进行操作吗!?不一定由javascript操纵,而是在页面加载时更改的变量。当按下按钮时,它们也会调用刷新,从firebug调用{{pay_period_start}}表明它正在更改,但在提交表单时,它始终是初始值。
<table><tr>
<td><b>Employee:</b>
    <input id="employee" value="{{employee_display}}"/>
    <input id="id_prev_emp" class="prev_button" type='button' value='' />
    <input id="id_next_emp" class="next_button" type='button' value='' />
</td>
<td><b>Pay Period Start:</b>
    <input id="pay-period-start" value="{{pay_period_start}}" />
    <input id="prev_period" class="prev_button" type='button' value='' onclick='updateDates()' />
    <input id="next_period" class="next_button" type='button' value='' onclick='updateDates()' />
</td>
<td>
    <form action=?employee_id={{employee_id}}&pay_period_start={{pay_period_start}} method="POST">
    <input type="submit" value="Print" /></form>
</td>
</tr></table>
<script>
var employee_id="{{employee_id}}";
var pay_period_start="{{pay_period_start}}"
...
function updateDates(){
    $("#pay_period_start").val($("#pay-period-start").val());
}