我只想从两个元素中获取几个属性.value
从input
元素获取属性按预期工作.问题是data-detail
从button
元素获取属性属性.它undefined
在使用时返回.prop()
,但在使用时按预期工作.attr()
.
任何人都可以解释我目睹的这种奇怪的行为吗?
HTML
<div class="formRow">
<label for="firstName">First name</label>
<div class="detailsControlBtns">
<button id="editFirstName" class="btn ctaBtn greenBtn editBtn">Edit</button>
<button class="btn ctaBtn greenBtn saveBtn" data-detail="firstName">Save</button>
<button id="closeFirstName" class="btn ctaBtn greyBtn closeBtn">Close</button>
</div>
<input type="text" id="firstName" name="firstName" value="[+firstName+]" readonly>
</div>
Run Code Online (Sandbox Code Playgroud)
JS
$(".saveBtn").on("click", function() {
var saveBtn = $(this);
// The following statement yields undefined. When using .attr() it works as expected.
var detail = saveBtn.prop("data-detail");
var relevantInput = saveBtn.parent().next();
// …
Run Code Online (Sandbox Code Playgroud) 我有这个表从数据库加载,所以所有元素each row
都具有相同的属性.
<table class="table table-responsive">
<tr>
<th>Product name</th>
<th>Quantity</th>
<th>Price per unit</th>
<th>Total</th>
<th>Action</th>
</tr>
<tr>
<td class="product-name">Product one name</td>
<td class="product-quantity">
<!-- plus button should increase quantity and update total based on unit_price*quantity -->
<button class="btn"> +</button>
<input type="text" value="2"/>
<button class="btn"> -</button>
</td>
<td class="unit-price">50</td>
<td class="total-price">100</td>
<td>
<!-- this should delete entire row -->
<button class="product-delete">Delete</button>
</td>
</tr>
...
</table>
<!-- on each quantity change this needs to update -->
<div class="grand-total"> 5000 </div>
Run Code Online (Sandbox Code Playgroud)
我试图制作 …
有一个很微妙的,我想将添加class
到所有父 <tr>
"第<td>
S的" 有任何一个<span>
或<div>
在其中的元素.所以我有一个带有标记的表格如下:
<table>
<tr>
<td>
</td>
<td>
</td>
<td>
<div>
</div>
</td>
<td>
</td>
</tr>
<tr>
<td>
<span></span>
</td>
<td>
</td>
<td>
<div>
</div>
</td>
<td>
</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
所以我希望<td>
有一个<span>
或者<div>
有一个类通过jQuery添加到它们的...
我似乎无法弄清楚如何循环遍历所有的<td>
检查他们的后代,然后将类添加到那些有一个<span>
或<div>
内部的...这可能吗?
感谢您可以放下任何光线!这让我很生气!
我有物品清单data and empty array quotations
:
var data = {};
var quotations = [];
Run Code Online (Sandbox Code Playgroud)
我想填充quotations
数据值,每次添加新数据时,它都会成功添加,但所有数据值都会获得最后一个值.
例如 :
$("#addquotation").click(function () {
debugger;
var itemname = $("#itemname").val();
var cost =parseFloat( $("#cost").val());
var notes = $("#notes").val();
var date = $("#date").val();
data.Item = itemname;
data.Cost = cost;
data.Notes = notes;
data.Date = date;
quotations.push(data);
)};
Run Code Online (Sandbox Code Playgroud)
我第一次添加
"test,45,testnotes,2016-02-03"第二次我添加了"test2,45.2,testnotes2,2016-02-05"
当我调试我获取数据为:
obj(0):"test2,45.2,testnotes2,2016-02-05"obj(1):"test2,45.2,testnotes2,2016-02-05"
它似乎将最后一个版本附加到所有数据
请指教 .谢谢
<div class="row">
<div class="col one-whole">
<nav class="top-nav">
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="about.html">About</a></li>
<li><a href="work/central.html">Central Plumping</a></li>
<li><a href="work/roofing.html">Roof</a></li>
<li><a href="work/drains.html">Drainage</a></li>
<li><a href="gallery.html">Gallery</a></li>
<li><a href="contact.html">Contact</a></li>
<a href="../index.html"><img src="img/title.png"></a>
</ul>
</nav>
<nav class="burger-nav">
<ul>
<li><a href="" id="toggleburger"><i class="fa fa-bars x3" aria-hidden="true"></i></a></li>
<li><a href="../index.html"><img src="img/title.png"></a></li>
</ul>
</nav>
</div>
</div>
<div class="burger">
<div class="row menu">
<div class="col one-whole">
<ul>
<li><a href="index.html">Home</a><a href="" id="toggleburger"><i class="fa fa-times x3" aria-hidden="true"></i></a></li>
<li><a href="about.html">About</a></li>
<li><a href="work/central.html">Central Plumping</a></li>
<li><a href="work/roofing.html">Roof</a></li>
<li><a href="work/drains.html">Drainage</a></li>
<li><a href="gallery.html">Gallery</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
大家好,目前正在尝试学习基本的JQuery.我设法创建了一个简单的导航栏,具有响应式汉堡菜单,可以根据屏幕大小隐藏和显示每个导航栏.然后我创建了一个汉堡div,它在显示时固定为100%屏幕尺寸,但目前设置为display:none.现在我已经让我的切换工作显示它,但当我尝试关闭菜单栏时,它似乎没有切换回来.任何帮助都会很棒. …
给定来自dom的HTML节点,我需要删除所有内联事件处理程序/属性,例如:onclick,onmouseover,onmousedown等。
我知道:
document.getElementById("some_id").attributes
Run Code Online (Sandbox Code Playgroud)
返回所有属性,我可以消除一些属性,但是还有一些属性,例如:id,class,name等。
如何区分这两种类型的属性?
也可以选择完全不同的方法来解决问题。
编辑:我试图仅删除内联事件,并且我还需要在删除之前将它们“保存”到其他位置,所以克隆以完全处置不是一个选择
如何获取正在编辑的元素?
HTML
<div contenteditable=true>
<pre>
<span class="1">First line</span>
<span class="2">Second line</span>
</pre>
</div>
Run Code Online (Sandbox Code Playgroud)
当我编辑“第一行”时,如何检查正在编辑哪个跨度类?
JS
window.addEventListener("input", inputHandler, false);
function inputHandler(e) {
console.log(e.target);
}
Run Code Online (Sandbox Code Playgroud)
打印出整个 div 类:
<div contenteditable=true>
<pre>
<span class="1">First line</span>
<span class="2">Second line</span>
</pre>
</div>
Run Code Online (Sandbox Code Playgroud)
但我只想得到 <span class="1">First line</span>
我正在尝试点击带有的页面上的所有按钮class
"btn btn-primary UnFollowUser"
。
这是我尝试使用的脚本
var buttons = document.getElementsByName('UnFollowUser');
for(var i = 0; i <= buttons.length; i++)
buttons[i].click();
Run Code Online (Sandbox Code Playgroud)
但这引发了错误:
VM336:5未被捕获的TypeError:无法读取未定义(...)(匿名函数)的属性'click'@ VM336:5InjectedScript._evaluateOn @ VM158:878InjectedScript._evaluateAndWrap @ VM158:811InjectedScript.evaluate @ VM158:667
有任何想法吗?
我有一些HTML选择:
<select class="form-control, dropdown" id="delperffrom" name="delperffrom">
. . .
<select class="form-control, dropdown" id="delperfto" name="delperfto">
. . .
Run Code Online (Sandbox Code Playgroud)
我想将它们初始化为"无价值",所以有这个javascript,它有效:
document.getElementById("delperffrom").selectedIndex = -1;
Run Code Online (Sandbox Code Playgroud)
..和这个jQuery,它没有:
$("#delperfto").selectedIndex = -1;
Run Code Online (Sandbox Code Playgroud)
为什么jQuery不起作用?
javascript ×8
html ×7
jquery ×6
arrays ×1
asp.net-mvc ×1
attr ×1
button ×1
css ×1
database ×1
dom ×1
html-select ×1
html5 ×1
list ×1
prop ×1