Jquery更新ckfinder表单字段

时间:2016-11-07 19:38:00

标签: javascript jquery ckfinder

我试图通过ck finders pop up图像选择器更新输入字段值.ckfinder-input。 一切正常,直到我尝试将所选图像URL分配给输入字段input.val() = fileUrl并收到以下错误消息:

  

ReferenceError:左侧无效分配

有人可以说明我做错了吗?

我的代码如下:



$(".ckfinder-modal-button").on("click", function() {
  input = $(this).parent().find(".ckfinder-input");
  BrowseServer(input);
});

function BrowseServer(input) {
  var finder = new CKFinder();
  finder.selectActionData = input;
  finder.selectActionFunction = function(fileUrl, data) {
    input = data['selectActionData'];
    console.log(input); //returns Object[input.form-control.ckfinder-input property value = "" attribute value = "null"]
    console.log(fileUrl); //returns "/customer_images/header_images/home.jpg"
    input.val() = fileUrl; // ReferenceError: invalid assignment left-hand side;
  }
  finder.resourceType = 'HeaderImages';
  finder.removePlugins = 'basket';
  finder.popup();
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="bootstrap-filestyle input-group">
  <input type="text" class="form-control ckfinder-input" name="ckfinder-input">
  <span class="group-span-filestyle input-group-btn ckfinder-modal-button" tabindex="0">
    <label class="btn btn-default">
      <span class="icon-span-filestyle fa fa-cloud-upload"></span>
  </label>
  </span>
</div>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

可能是因为您的JavaScript无效。您不能将值(fileUrl)分配给函数(input.val())的输出: js input.val() = 'abc'; 你应该:

a)如果是DOM Input Element input.value = 'abc';

b)如果是jQuery wrapper for DOM Element input.val( 'abc' );