有没有办法可以简化这段代码:
var topic_html = obj.$form.find("#select-topic").html();
var topic_val = obj.$form.find("#select-topic").val();
var topic_text = obj.$form.find("#select-topic option:selected").text();
我知道它相当干净但有一种方法可以避免obj.$form.find.
的三个实例
答案 0 :(得分:8)
您不需要每次都找到选择,将其缓存在变量中。
var topic = obj.$form.find("#select-topic");
var topic_html = topic.html();
var topic_val = topic.val();
var topic_text = topic.find("option:selected").text();
答案 1 :(得分:4)
您正在通过其ID获取对象 - 您为什么要obj.$form.find
?
只需要$('#select-topic')
- 除非你需要确保该元素是表单的子元素吗?
反正:
var select = $('#select-topic');
var topic_html = select.html();
var topic_val = select.val();
var topic_text = select.find('option:selected').text();
为什么你需要同一件事的所有三个版本?
答案 2 :(得分:0)
@ xdazz的回答略有不同。我尝试将其保留为单个var关键字。
var topic = obj.$form.find("#select-topic"),
topic_html = topic.html(),
topic_val = topic.val(),
topic_text = topic.find("option:selected").text();