[英]JavaScript: change function(this) to function(this.id)
我有此javascript
函數,可打開文本框的kcfinder文件管理器url。
JS:
<script type="text/javascript">
function openKCFinder(field) {
window.KCFinder = {
callBack: function(url) {
field.value = url;
window.KCFinder = null;
}
};
window.open("http://localhost/cms/kc/browse.php?type=video&dir=files/public", "kcfinder_textbox",
"status=0, toolbar=0, location=0, menubar=0, directories=0, " +
"resizable=1, scrollbars=0, width=800, height=600"
);
}
</script>
HTML:
<input id="video" onclick="openKCFinder(this)" class="form-control" type="text" name="video" placeholder="add video"> // i need to change openKCFinder(this.id)
<input id="audio" onclick="openKCFinder(this)" class="form-control" type="text" name="video" placeholder="add video"> // i need to change openKCFinder(this.id)
現在我需要將(this)
更改為(this.id)
以更改打開url
type
。 即:如果textbox/input id="video"
則type=video
如果textbox/input id="audio"
,則type=audio
。
如何根據需要更改此功能?
您可以這樣操作:
<script type="text/javascript">
function openKCFinder(field) {
window.KCFinder = {
callBack: function(url) {
field.value = url;
window.KCFinder = null;
}
};
if (field.id === 'video') {
window.open("http://localhost/cms/kc/browse.php?type=video&dir=files/public", "kcfinder_textbox",
"status=0, toolbar=0, location=0, menubar=0, directories=0, " +
"resizable=1, scrollbars=0, width=800, height=600"
);
}
else if (field.id === 'audio') {
// open something else
}
else {
// handle something unknown
}
}
</script>
或者,如果您確定ID,也可以這樣做
window.open("http://localhost/cms/kc/browse.php?type=" + field.id + "&dir=files/public", "kcfinder_textbox",
"status=0, toolbar=0, location=0, menubar=0, directories=0, " +
"resizable=1, scrollbars=0, width=800, height=600"
);
您還可能有興趣在該HTMLInputElement的MDN的文檔 ,描述你的屬性與this
的field
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.