即使元素不存在,如何使javascript继续

即使元素不存在,如何使javascript继续,javascript,jquery,selectedindex,Javascript,Jquery,Selectedindex,这是我的问题:如果#sizem和/或#sizevided以上的元素不存在,以下代码将停止工作。当产品不需要所述元素/id时,电子商务商店移除元素/id 在我看来,只有当所有元素同时存在时,代码才起作用。 有没有其他方法可以做到这一点并避免代码停止? 如果用户在尝试购买/添加到购物篮时未选择尺寸和/或颜色,则应将其应用于带有警告的下拉列表 $('#prod-buy').click(function(){ if ($("#color")[0].selectedIndex <= 0) {

这是我的问题:如果#sizem和/或#sizevided以上的元素不存在,以下代码将停止工作。当产品不需要所述元素/id时,电子商务商店移除元素/id

在我看来,只有当所有元素同时存在时,代码才起作用。 有没有其他方法可以做到这一点并避免代码停止? 如果用户在尝试购买/添加到购物篮时未选择尺寸和/或颜色,则应将其应用于带有警告的下拉列表

$('#prod-buy').click(function(){

  if ($("#color")[0].selectedIndex <= 0) {
            alert("Select color");
            return false;
        }

  if ($("#sizem")[0].selectedIndex <= 0) {
            alert("Select size");
            return false;
        }         

  if ($("#sizedivided")[0].selectedIndex <= 0) {
            alert("Select size");
            return false;
        }      
});
$('prod-buy')。单击(函数(){

if($(“#color”)[0].selectedIndex需要测试是否存在元素。直接从代码中可以执行此操作

$('#prod-buy').click(function(){

    if ($("#color")[0] && $("#color")[0].selectedIndex <= 0) {
        alert("Select color");
        return false;
    }

    if ($("#sizem")[0] && $("#sizem")[0].selectedIndex <= 0) {
        alert("Select size");
        return false;
    }         

    if ($("#sizedivided")[0] && $("#sizedivided")[0].selectedIndex <= 0) {
        alert("Select size");
        return false;
    }      
$('prod-buy')。单击(函数(){

如果($(“#颜色”)[0]&&($(“#颜色”)[0]。选择了索引,则应检查每个元素是否存在

使用jQuery时,请使用length属性:

if($('#sizem').length) {
    if ($("#sizem")[0].selectedIndex <= 0) {
        alert("Select size");
        return false;
    }         
}
if($('#sizem').length){

if($(“#sizem”)[0]。选择了索引,那么使用try-catch如何?您是否在多个元素上使用相同的id?(例如,
color
sizem
)您不应该对多个HTML元素使用
id
属性,它们应该用于标识单个元素。如果需要针对多个元素,请使用
class
属性,只需将选择器中的
替换为
,即可按类进行选择。您可以选中
If($(“#sizem”).length){
check
if($(“#sizem”){//your code here}
这在我的示例中不起作用:(由@RamblinRose解决,不过.Thaks回答!