我是javascript中面向对象编程的新手,我正在尝试理解我正在处理的项目中的一些函数.
我如何调用/运行内部函数(列出'this.getFieldset = function(){')来执行?
function Fieldset() {
this.id = "";
this.content = document.createElement("DIV");
this.content.id = "content";
this.title = "Title";
this.getFieldset = function() {
var div = document.createElement("DIV");
div.id = this.id;
var span = document.createElement("SPAN");
var fieldset = document.createElement("DIV");
fieldset.id = "fieldset";
var header = document.createElement("DIV");
header.id = "header";
span.appendChild(document.createTextNode(this.title));
header.appendChild(span);
div.appendChild(header);
div.appendChild(this.content);
div.appendChild(fieldset);
return div;
}
}
var myFieldset = new Fieldset();
myFieldset.getFieldset();
Run Code Online (Sandbox Code Playgroud) 我试图了解 Wordpress 插件如何处理数据,当我从 MySQL 中提取它时,它是这样的:
a:1:{s:9:"home-team";a:6:{s:2:"id";s:9:"home-team";s:4:"slug";s:9:"home-team";s:4:"type";s:6:"select";s:4:"name";s:9:"Home Team";s:11:"description";s:0:"";s:4:"data";a:4:{s:7:"options";a:3:{s:60:"wpcf-fields-select-option-3892e2c3ad45e24dc7f47ff2ba880c33-2";a:2:{s:5:"title";s:13:"Chicago Bears";s:5:"value";s:1:"1";}s:60:"wpcf-fields-select-option-09fbd82bfa4142df6439c8e15d96dbfc-1";a:2:{s:5:"title";s:15:"New York Giants";s:5:"value";s:1:"2";}s:60:"wpcf-fields-select-option-7c7df972f933545b37c41ca249c686b4-1";a:2:{s:5:"title";s:15:"Oakland Raiders";s:5:"value";s:1:"3";}}s:8:"validate";a:1:{s:8:"required";a:3:{s:6:"active";s:1:"1";s:5:"value";s:4:"true";s:7:"message";s:22:"This Field is required";}}s:19:"conditional_display";a:2:{s:8:"relation";s:3:"AND";s:6:"custom";s:0:"";}s:16:"disabled_by_type";i:0;}}}
Run Code Online (Sandbox Code Playgroud)
是否有存储方式的名称?对我来说它看起来有点像 JSON,但这当然不是 JavaScript。另外,有没有办法轻松清理它(通过使用在线工具),所以前几行看起来像这样:
a:1: {
s:9:"home-team";
a:6: {
s:2:"id";
s:9:"home-team";
s:4:"slug";
s:9:"home-team";
s:4:"type";
s:6:"select";
s:4:"name";
Run Code Online (Sandbox Code Playgroud)
等等……等等……
我想我非常接近解决这个问题,但我在某个地方出错了.
如果从下拉列表中选择"Mercedes",则应启用文本输入(请注意,实际系统中没有类或id名称,因此我必须使用表单名称).
如果此值设置为Mercedes,我还需要它来检查初始页面加载,在这种情况下,输入也不应该显示.
这是我到目前为止(小提琴):
HTML:
你的车:
<select name="car">
<option value=""></option>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
<br>
What do you like about your Mercedes?
<input type="text" name="likemercedes">
Run Code Online (Sandbox Code Playgroud)
jQuery的:
$("input[type='text'][name='likemercedes']").prop('disabled', true);
if($("input[type='text'][name='car']").val() == "mercedes")
{
$("input[type='text'][name='likemercedes']").removeAttr('disabled');
}
Run Code Online (Sandbox Code Playgroud) 使用jQuery,我正在尝试找出一种方法来将跨区内的单词发送到鼠标悬停时出现的弹出窗口,我不确定如何发送文本.我有弹出窗口,但我无法发送文本.
所以在这个例子中,我想把弹出窗口(class ="popup")简单地说成Hello World.
HTML:
<span class="text" data-id="#text1">Hello World</span>
<div class="popup" id="text1">This should just say Hello World, so this popup is wrong.</div>
Run Code Online (Sandbox Code Playgroud)
JS:
$(document).on("mouseover", ".text", function() {
var id = $(this).data('id');
$(id).fadeIn();
}).on('mouseout', '.text', function() {
var id = $(this).data('id');
$(id).fadeOut();
});
Run Code Online (Sandbox Code Playgroud)
CSS:
.text {background-color: red}
.popup {display: none}
Run Code Online (Sandbox Code Playgroud)