入力、テキスト、および選択要素が動的に追加されたフォームがあります。
フォームの ID は で、このフォーム内に表示される要素#user-form
の値を変更する必要があります。input/select/text
ページの読み込み時にフォーム項目の 1 つが非表示になっているためinput:hidden
、選択項目に含めました。
1 つの要素の HTML 出力の例は次のようになります。
<input id="slider-coll" class="enq-form-input form-text" type="text" maxlength="128" size="10" value="" name="slider_coll">
jQueryを使用した現在のコードは次のようになります。
sliderForm.find('#user-form').find('.enq-form-input, .enq-form-select, input:hidden').change(function() {
inputValue = $(this).val();
console.log(inputValue);
$(this).val(inputValue);
if (catchValue && feetValue) {
calculateAmounts(catchValue, feetValue);
}
});
catchValue
&feetValue
は change 関数の外でグローバル変数として定義しました。このフォームは、jQuery スライダー プラグインも使用します。
Console.log
正しい値を返しますが、実際の入力値を更新できません。
calculateAmounts
値が変更されるたびに起動する必要がある ajax 関数です。
現在catchValue
&が正しい値を返すfeetValue
場合でも、false を返しています。console.log
私はおそらく簡単なものを見逃しています、誰もこれを修正する方法を知っていますか?
* Nerdwood リクエストごと* *
calculateAmounts
以下ですが問題ありません。単一の強制変更に対してテストすると機能します。私の問題は、入力の値が更新されていないことです。
function calculateAmounts(catchValue, feetValue) {
jQuery.ajax({
type: 'POST',
url: '/calculateAmounts/ajax',
dataType: 'json',
success: ajaxCalcAmountsCompleted,
data: {
catchValue:catchValue,
feetValue:feetValue
}
});
}