Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
单击html选择选项时,如何使用jQuery显示html?_Jquery_Select_Click - Fatal编程技术网

单击html选择选项时,如何使用jQuery显示html?

单击html选择选项时,如何使用jQuery显示html?,jquery,select,click,Jquery,Select,Click,当点击上的某个时,我想显示一些html。我有下面的HTML代码。是这样做的吗?即使没有错误,它似乎也不起作用 jQuery: $('#addSubject').click(function(){ $('#pgHide').show(); $('span.centerMessage').hide(); $('#addSubjectPopup').show(); }); HTML: 添加主题 创建。。。 关闭 添加主题 元素不会触发单击事件,只有才触发。相反,您可以

当点击
上的某个
时,我想显示一些html。我有下面的HTML代码。是这样做的吗?即使没有错误,它似乎也不起作用

jQuery:

$('#addSubject').click(function(){
     $('#pgHide').show();
     $('span.centerMessage').hide();
     $('#addSubjectPopup').show();
});
HTML:


添加主题
创建。。。
关闭
添加主题
元素不会触发单击事件,只有
才触发。相反,您可以在更改后检查
的选定值:

$('select').change(function () {
    if ($(this).val() == 'Add Subject') {
        // Rest of your code
    }
}).change(); // Trigger change immediately to work on DOM-ready

或者,如果您希望继续通过HTML指定目标
,则:

$('select').change(function () {
    if ($(this).find('#addSubject:selected').length) {
        // Rest of your code
    }
}).change(); // Trigger change immediately to work on DOM-ready
元素不会触发单击事件,只有
才触发。相反,您可以在更改后检查
的选定值:

$('select').change(function () {
    if ($(this).val() == 'Add Subject') {
        // Rest of your code
    }
}).change(); // Trigger change immediately to work on DOM-ready

或者,如果您希望继续通过HTML指定目标
,则:

$('select').change(function () {
    if ($(this).find('#addSubject:selected').length) {
        // Rest of your code
    }
}).change(); // Trigger change immediately to work on DOM-ready

您必须像这样更改标记

<select id="addSubject">
     <option value="1">Add Subject</option>
</select>
<div id="pgHide" style="display: none; ">
     <span class="centerMessage">
          <img src="../images/loading.gif" />
     Creating...</span>
     <div class="centerMessage" id="addSubjectPopup" style="display: none;">
          <span class="closePopup">close</span>
          <div id="insideCenterMessage">
          <label>Add Subject</label>
          <input type="text" name="subject" id="addSubjectField">
          <input type="submit" value="Add Subject" id="addSubjectBttn">
     </div>
</div>

您必须像这样更改标记

<select id="addSubject">
     <option value="1">Add Subject</option>
</select>
<div id="pgHide" style="display: none; ">
     <span class="centerMessage">
          <img src="../images/loading.gif" />
     Creating...</span>
     <div class="centerMessage" id="addSubjectPopup" style="display: none;">
          <span class="closePopup">close</span>
          <div id="insideCenterMessage">
          <label>Add Subject</label>
          <input type="text" name="subject" id="addSubjectField">
          <input type="submit" value="Add Subject" id="addSubjectBttn">
     </div>
</div>

但是,请记住,“更改”仅在选项已更改时有效。如果默认情况下选择了该事件,则可能需要手动触发该事件$(#addSubject')。(…之前的内容…。触发器('change');您还需要在select上使用更改事件,而不是选项。您不应该在
select
元素上捕获更改事件吗?此外,
.val()
给出了
选择
下所选选项的
属性,该属性在OP的markup@xixonia,以及单击。我已经改变了,干杯。这绝对有道理,谢谢。但由于某些原因,它不起作用。我肯定在某个地方有个bug。但是,请记住,“更改”仅在选项更改时有效。如果默认情况下选择了该事件,则可能需要手动触发该事件$(#addSubject')。(…之前的内容…。触发器('change');您还需要在select上使用更改事件,而不是选项。您不应该在
select
元素上捕获更改事件吗?此外,
.val()
给出了
选择
下所选选项的
属性,该属性在OP的markup@xixonia,以及单击。我已经改变了,干杯。这绝对有道理,谢谢。但由于某些原因,它不起作用。我一定在什么地方有虫。