我在我的頁面上有一個textarea輸入,我想用AJAX發佈到服務器。 AJAX調用很好,但是,它不會看到textarea中的值。Ajax沒有看到textarea值
我的HTML:
<div class="promptBody">
<div id="promptText" onclick="replaceWithInput(this)">
<p class="promptBody"><div id="prompty">{{prompt.prompt|linebreaks}}</div></p>
</div>
<form id="promptUpdateForm">
<div id="promptInput">
<p><textarea class="input" cols="40" id="id_prompt" name="prompt" placeholder="Prompt" rows="10"></textarea></p>
<p><input class="submit" type="submit" name="submit" id="submit" value="Edit Prompt" /></p>
</div>
</form>
</div>
<script type="text/javascript">
$(document).ready(function() {
$(document).on('submit', '#promptUpdateForm', function(e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: '/apps/litprompt/a/{{prompt.id}}/update/',
data: {
'prompt': $('#id_prompt').val(),
csrfmiddlewaretoken: $('input[name="csrfmiddlewaretoken"]').val(),
},
success: function(json) {
$('#promptText').html(json.prompt_data);
var promptText = document.getElementById('promptText');
var promptInput = document.getElementById('promptInput');
promptText.style.display = 'block';
promptInput.style.display = 'none';
}
});
});
});
</script>
如果我更改了數據我Ajax代碼爲 '提示': '胡說',它工作得很好。但每次我發佈'提示':$('#id_prompt')。val(),它是一個空值。
你忘了關textarea的,他們都沒有自我封閉,而且需要''關閉標籤 – adeneo
很抱歉的混亂,我忘了當我重新格式化該問題的代碼,但它在實際的代碼中,它仍然無法正常工作。我重新格式化了這個問題來糾正這個問題。 –