jQuery$.post结果条件
jQuery $.post result condition
我在jQuery网站上修改了这段代码,在其中添加了一个条件。但无论结果如何,它总是出现在第一个"if"中。我怎样才能使我的病情好转?
<script>
/* attach a submit handler to the form */
$("#searchForm").submit(function(event) {
/* stop form from submitting normally */
event.preventDefault();
/* get some values from elements on the page: */
var $form = $( this ),
term = $form.find( 'input[name="s"]' ).val(),
url = $form.attr( 'action' );
/* Send the data using post and put the results in a div */
**//the condition doesn't work here. It always get into the first "if". Why?**
$.post( url, { s: term },
function( data ) {
if (var content = $( data ).find( '#content' )) {
console.log('One or more results were found');
} else {
console.log('no result');
}
}
);
});
</script>
因为您在条件中进行赋值。它总是真实的。但如果是
if(data!="")
那么这将是一个条件。
使用$( data ).find( '#content' ).length
在您的情况下,您在if条件内将$( data ).find( '#content' )
分配给var content
。$( data ).find( '#content' )
返回一个对象,该对象总是true
,因此它总是满足if条件。
如果您想检查数据中是否存在元素,请使用
if ($( data ).find( '#content' ).length > 0) {
// content exist
} else {
// empty
}
而不是
var content = $( data ).find( '#content' )
尝试
$( data ).find( '#content' ).length
find()总是返回一个对象,所以它总是true。如果您执行.size(),您将看到它是否真的包含任何内容。
相关文章:
- 根据条件检查数据库结果
- If语句只执行第一个条件并运行其他条件,但没有结果
- Jquery XML搜索并显示具有特定用户输入条件的结果
- 更好的性能?200+ 个单独的结果页面或 200+ 个条件(如果还有其他梯形图或开关大小写?)在 Javascript/
- 条件运算符,简化添加后检查结果的方法
- 为什么空的 JavaScript 数组在条件结构中的计算结果为 true
- 节点猫鼬填充条件不返回预期结果
- JS AJAX 提前键入结果排序/竞争条件
- 我可以将Javascript条件的结果导入到PHP变量中吗
- 使用数组映射过滤带有if条件的结果
- jQuery$.post结果条件
- jQueryAJAX-基于PHP页面数据的有条件成功结果
- 什么'It’为什么要做一个没有结果的条件
- 使用AngularJS阅读RSS提要并有条件地显示结果
- jquery/ajax以用户输入为条件运行php查询,然后显示查询结果而不刷新页面
- jQuery如果条件没有返回预期的结果
- JavaScript条件的计算结果为false
- 预测未定义的结果条件
- 即使条件n't不满足,while循环的结果仍然发生
- 关于Coffeescript/Javascript条件结果的问题