[英]Changing a text box value upon selecting a file
我有一個帶有文件選擇器的表單,以及一個用於輸入文件鏈接的替代輸入框。 上載時,如果url框有一個值,則它優先於文件選擇器並上傳。 我的問題是選擇文件后如何清除網址框? 這就是表格的樣子。
<div id="video-attachment-section" class="attachment-section">
<div>
<label>URL: </label><form:input path="url" id="video-url" style="width:95%;margin-left:2%;"/>
</div>
<div>
OR
</div>
<div id="video-attachment-field">
<label>Local File: </label>
<input type="file"
name="attachment"
accept="${lookups.attachmentMimeTypesList}"
onchange="c.handleFileSelected(this.files)"
class="attachment-input"
id="video-file" style="display:none;"/>
<label class="button button-low-priority" id="btn-select-file" for="video-file" style="margin-left:.5%;">Select File</label>
<span id="video-file-error" class="attachment-error"></span>
<span id="video-file-name" class="attachment-name">${videoUploadForm.uploadedFileName}</span>
<span id="video-file-size" class="attachment-size"></span>
<div class="upload-progress"></div>
<form:hidden path="uploadedFileName"/>
</div>
</div>
因此,正如您所看到的,我正在使用與輸入元素上不同的按鈕來打開文件對話框(出於樣式目的,另一個按鈕是可怕的。)
這是我嘗試過的,但是沒有運氣:
init:function(){
$("#video-file").change = function(e){
$("#video-url").val("");
};
}
change
是一種方法,而不是屬性。 嘗試這個:
init:function(){
$("#video-file").change(function(e){
$("#video-url").val("");
});
}
您必須綁定change
事件,而不是為其分配功能,請參見以下代碼
init:function(){
$("#video-file").bind("change",function(e){
$("#video-url").val("");
});
}
但是,正如評論指出, bind
已經廢棄了JQuery1.7,如果你使用的是1.7或超越,那么請使用如下代碼:
init:function(){
$("#video-file").change(function(e){
$("#video-url").val("");
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.