我尝试将javascript更改为jquery,但它有问题

我尝试将javascript更改为jquery,但它有问题,javascript,jquery,Javascript,Jquery,我试图将javascript更改为jquery,但没有成功 尤其是有价值的部分对我来说很难 javascript function javascript_click() { if(document.getElementById("value1").value){ var val = document.getElementById("value1").value; if(document.getElementById(val)){ //var myNodelist

我试图将javascript更改为jquery,但没有成功
尤其是有价值的部分对我来说很难

javascript

function javascript_click() {
  if(document.getElementById("value1").value){
    var val = document.getElementById("value1").value;
    if(document.getElementById(val)){
      //var myNodelist = document.getElementById("val").value;
      document.getElementById("cnt").innerHTML += "선택하신아이디는 " + val + " 이며 id갯수는 1개입니다.By javascript <br>";
    }else{
      document.getElementById("cnt").innerHTML += "wrong value of ID <br>";
    }
  }
}
JQuery格式的javascript_click函数:

function javascript_click() {
if ($("#value1").val()) {
    var val=$("#value1").val();
    if($('#'+val).length){
         $("#cnt").html($("#cnt").html()+"선택하신아이디는 " + val + " 이며 id갯수는 1개입니다.By javascript <br>");
    }else{
         $("#cnt").html($("#cnt").html()+"wrong value of ID <br>");
    }
}
函数javascript\u click(){
if($(“#value1”).val()){
var val=$(“#value1”).val();
如果($('#'+val).length){
$(“#cnt”).html($(“#cnt”).html()+”선택하신아이디는 " + 瓦尔+”이며 身份证件갯수는 1.개입니다.通过javascript
”; }否则{ $(“#cnt”).html($(“#cnt”).html()+“ID值错误
”; } }
}请使用

var length = val.length

您的val是一个javascript对象。

@Tuhin Hossain已经提供了要点。但是,如果您愿意,您可以将代码进一步缩短一点。下面是一个工作提琴:

$('javascript_-click')。单击(函数(){
var val=$(“#value1”).val();
$(“#cnt”).append((val&&$('#'+val).length)
?"선택하신아이디는 “+$('#'+val).val()+”이며 身份证件갯수는 1.개입니다.通过javascript
” :“ID的值错误
” ); })


一个
两个





这是我要添加到的div…
这可能是问题$(“val”)val是什么意思?您在jQuery中使用'javascript_click'函数作为id是否正确?共享JSFIDLE链接这将便于更好地理解,然后您使用'val'作为字符串使用val而不是'val'。此代码中的一些小错误表明您可能不了解jQuery的一些基础知识。我强烈推荐一个快速的课程/教程。我认为这部分有一个问题。[var val=document.getElementById(“value1”).value;if(document.getElementById(val))]->var val=$(“#value1”).val();if(“#val”){您的测试
if($($('#'+val))
将始终提供一个
true
结果,因为它将始终生成一个jquery对象。您可能要测试的是,jquery对象中是否有匹配的元素。您可以使用
if($('.'.''.'+val.length)
来实现这一点。感谢@cars10m对
if($('.'.'.+val.length)的澄清。
很好,但是使用
if($(“#”+val))
它不会总是返回true。如果它与选择器匹配,它将返回true。我不同意你的观点:使用
$(“#胡说”)。长度
。它将导致
0
,因为当前页面上不存在具有此ID的元素。但是
$(“#胡说”)
将生成有效的jquery对象。在
if
子句中测试此对象将返回“truesy”响应。为了澄清问题:
!!(“#胡说”)
将始终给出
true
var length = val.length