我想在选择了选择字段中的状态后启用提交按钮。
<div class="close_req">
<div class="req_status">
<select id="status_update">
<option value="status" selected="selected" disabled="disabled">Status</option>
<option value="complete">Complete</option>
<option value="pending">Pending</option>
</select>
</div>
<div class="req_addcharges">
<select id="additional_charges">
<option value="charge">Additional Charges</option>
<option value="complete">Yes</option>
<option value="pending">No</option>
</select>
</div>
<div class="additional_charge">
<input type="text" id="add_price" name="add_price" placeholder="Enter the additional charge" />
</div>
<div class="task_desc">
<textarea id="task" name="task" cols="10" rows="6" placeholder="Description of the task"></textarea>
</div>
<div class="task_complete">
<input type="submit" id="complete" name="complete" value="Task Complete" />
</div>
</form>
</div>
这是我试过的jquery脚本
$(document).ready(function () {
$("#complete").attr("disabled", "disabled");
function updateFormEnabled() {
if ($("#status_update").prop('selected', true)) {
$("#complete").removeAttr('disabled');
} else {
$("#complete").attr('disabled', 'disabled');
}
}
});
$("#status_update").change(updateFormEnabled);
但是提交按钮始终处于禁用状态,我希望在选择字段中选择状态后启用该按钮。任何人都可以帮我解决这个问题。
答案 0 :(得分:2)
你的病情不好,应该是
if ($("#status_update").prop('selected') == true)
答案 1 :(得分:2)
$("#status_update").change(updateFormEnabled);
应该在$(document).ready(function () {});
答案 2 :(得分:2)
#status_update
是选择列表而不是选项,您必须改为检查所选选项:
function updateFormEnabled() {
$("#complete").attr('disabled', 'disabled');
$('#status_update option').each(function() {
if($(this).is(':selected')){
$("#complete").removeAttr('disabled');
return;
}
}
}
$("#status_update").change(updateFormEnabled);
答案 3 :(得分:1)
另一种方法是
if($("#status_update option:selected").length) {/* do action */}
<强>的jsfiddle 强>