<li class="last filter">
<?php echo $bps_options['message']; ?>
<input id="bps_Show" type="checkbox" onclick="javascript:bps_toggleForm()" />
</li>
<?php } ?>
</ul>
當被選中複選框示出的形式。如何將其更改爲普通按鈕? 謝謝
<li class="last filter">
<?php echo $bps_options['message']; ?>
<input id="bps_Show" type="checkbox" onclick="javascript:bps_toggleForm()" />
</li>
<?php } ?>
</ul>
當被選中複選框示出的形式。如何將其更改爲普通按鈕? 謝謝
最好的辦法是將您的複選框input
標記在範圍內,獲取對該範圍的引用,並用複製了重要屬性的新按鈕元素替換innerHTML
。
如果你不能使用Jquery,你可以通過在父元素上交換innerHTML來做到這一點。沒有Jquery,這有點困難但仍然可行。
如果你可以使用JQuery,你可以使用.replaceWith()。
HTML:
<div id="wrapper">
<input id="bps_Show" type="checkbox" value="click me" onclick="toggleInput();"/>
</div>
Javascript版本JSFiddle with just javascript
var oldInput = "<input id=\"bps_Show\" type=\"checkbox\" value=\click me\" onclick=\"toggleInput();\"/>";
var newInput = "<input id=\"bps_Show\" type=\"button\" value=\click me\" onclick=\"toggleInput();\"/>";
function toggleInput() {
var wrapper = document.getElementById('wrapper');
var elm = document.getElementById('bps_Show');
//bps_toggleForm();
if(elm.getAttribute("type") == "button") {
wrapper.innerHTML = oldInput;
} else {
wrapper.innerHTML = newInput;
}
return false;
}
JQuery的:Jquery Version
$(document).ready(function() {
var newInput = "<input id=\"bps_Show\" type=\"button\" value=\"Click Me\"/>";
var oldInput;
$("#bps_Show").live("click", function(e) {
e.preventDefault();
//bps_toggleForm();
oldInput = $(this);
$(this).replaceWith(newInput);
newInput = oldInput;
});
});
只是JavaScript還是你有能力使用Jquery呢? – kasdega