我希望在div中显示特定文本时启用某些面板。例如,当文本“This is a valid host”出现在特定div中时,将给出警报并且应该启用一些元素(在开始时禁用)。如果没有文本出现,那么警报将是“无效主机”。我实现了以下代码,但每次显示警告时说“有效主机,面板已启用”。 这是我的代码:
<script>
$("#divoutput").bind("DOMSubtreeModified" , function(){
if (("#divoutput").innerhtml=="This a valid host")
{alert ("valid host , panels are enabled");
$('#text1').attr('disabled', false);
$('#text2').attr('disabled', false);
$('#text3').attr('disabled', false);
$('#text4').attr('disabled', false);
elseif (("#divoutput").innerhtml=="")
alert ("Invalid host , ");
})
</script>
答案 0 :(得分:0)
提供的代码段中存在无效
selectors
和更多人为错误
完成下面提供的示例:
$("#divoutput").bind("DOMSubtreeModified", function() {
if (this.innerText == "This a valid host") {
alert("valid host , panels are enabled");
} else if (this.innerText == "") {
alert("Invalid host , ");
}
});
$('#btn').on('click', function() {
var selctor = $("#divoutput");
var html = selctor.text();
if (html) {
selctor.html('');
} else {
selctor.html('This a valid host');
}
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<div id="divoutput">Hello</div>
<Button id='btn' type='button'>Change</Button>
&#13;
答案 1 :(得分:0)
你的意思是这样吗?
<强> HTML 强>:
<div id="text">This is a valid host</div>
<input type="radio" id="input" disabled="true">
<button id="button">Click</button>
<强>的Javascript 强>:
$(document).ready(function(){
$('#button').click(function(){
if(document.getElementById('text').innerHTML == "This is a valid host"){
$('#input').removeAttr("disabled");
alert("Valid host , panels are enabled");
} else {
$('#input').attr("disabled", "true");
alert("Invalid host");
}
});
});
点击按钮后,它会检查&#34;这是否是有效主机&#34;文字存在。如果文本存在,则将启用单选按钮。
答案 2 :(得分:-1)
@ abhishek,你错过了你的code.try中的大括号。更新了你的代码。
$("#divoutput").bind("DOMSubtreeModified" , function(){
if (("#divoutput").innerhtml=="This a valid host")
{
alert ("valid host , panels are enabled");
$('#text1').attr('disabled', false);
$('#text2').attr('disabled', false);
$('#text3').attr('disabled', false);
$('#text4').attr('disabled', false);
}
else if (("#divoutput").innerhtml== " ")
{
alert ("Invalid host");
}
});
答案 3 :(得分:-1)
你可以这样做:
$("#divoutput").on("DOMSubtreeModified", function() {
if ($(this).text() === "This a valid host") {
alert("valid host , panels are enabled");
$('#text1').attr('disabled', false);
$('#text2').attr('disabled', false);
$('#text3').attr('disabled', false);
$('#text4').attr('disabled', false);
} else if ($(this).text() === ""){
alert("Invalid host");
}
});
setTimeout(function(){
$("#divoutput").html("This a valid host");
}, 1000);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="divoutput"></div>
&#13;
请注意,您可以在回调中使用$(this)
来引用div#output元素。您也可以使用starts with selector整理所有对#text1,#text2,#text3等的引用。
也许:$("input[id^='text']").attr('disabled', false);