我有一个名为getConvertionValue的函数,从该函数中我使用ajax调用在控制器中编写的getCurrencyConvertion函数。

function getConvertionValue(from, to) {
  if (from != to) {
    $.ajax({
      url: base_url + 'admin/order/getCurrencyConvertion',
      type: 'post',
      data: {
        from: from,
        to: to
      },
      success: function(result) {
        result = $.parseJSON(result);
        $.each(result, function(key, element) {
          var rate = element.abc_convertion_rate;
          rate = parseFloat(rate);
          $('#divider').val(rate).change();
        });
      }
    });
  } else {
    $('#divider').val(1).change();
  }
}


在上面的ajax成功函数中,我设置了隐藏字段值,并且我不得不使用该隐藏字段值。

getCovertionValue(from, to);
$("#divider").change(function() {
  var divider = $(this).val();
  alert(divider);
});


正如您在我的Ajax成功函数中看到的那样,我已经检查了rate值和名为“ divider”的隐藏字段的值,在该部分中没有问题,但是在$("#divider").change(function()部分未正确获得该值。我是新来的,请有人帮我找出解决方案。

最佳答案

使用text()代替val()。

.val()适用于输入元素(或任何具有value属性的元素?),. text()不适用于输入元素。

.val()获取输入元素的值-与类型无关。 .text()获取所有匹配元素的innerText(不是HTML):

关于javascript - 在Ajax成功功能中未正确设置隐藏字段值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46648362/

10-09 22:33