我正在尝试使用Jquery在click
事件之后操作表单字段中的值,但由于某种原因,我似乎无法从表单中获取任何内容,而我不这样做认为这是jQuery语法,因为我在程序的其他地方成功使用它。
HTML:
<form class="centered formula-form">
<input type="text" id="project" name="project" placeholder="Name your project" maxlength="20" required />
<input type="text" id="description" name="description" placeholder="Give it a brief description" maxlength="35" required /> <br /> <br />
<input type="text" id="name" placeholder="Ingredient Name" required />
<input type="number" id="amount" placeholder="0" min="0" step="0.1" required />
<input type="text" id="notes" placeholder="form, supplier, etc" />
<input type="submit" value="Add Ingredient" class="pure-button" />
</form>
<table class="centered-block pure-table pure-table-striped formula-table">
<thead class="thead-styled">
<tr class="centered">
<th>Ingredient</th>
<th>Amount</th>
<th>Notes</th>
<th></th>
</tr>
</thead>
<tbody class="formula-body">
</tbody>
</table>
<button type="submit" value="Submit" class="pure-button pure-button-primary formula-submit" >Submit</button>
点击button class="formula-submit"
后,我正在尝试保存表单值,如下所示:
JQuery的:
$('.formula-submit').click(function(){
//declare variables
var projectName = $('#project').val();
var description = $('#description').val();
});
但这没效果。我也试过了:
$('input:text[name=project]').val()
但没有骰子。
据我所知,这些选择器应该可以工作,而对我来说更奇怪的是,在同一个文件中我使用AJAX
约定进行了$('#project').val()
调用,它运行得很好,所以我不确定我的代码结构是什么阻止我获取这些值。
我已经完成了console.log
以验证jQuery实际上是在记录点击事件。它是。
答案 0 :(得分:0)
好的,我意识到它是什么。
我的答案中的代码没有错。问题是我在另一个文件中引用相同的表单值,并在将数据传递到由同一事件触发的AJAX
调用后清空表单字段。
该文件列在此问题的代码上方,因此首先执行该文件,因此当我尝试将值存储在表单字段中时,它们已被删除。