Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 代码适用于jquery 1.8.3,但不适用于1.9.1及以上版本_Javascript_Jquery - Fatal编程技术网

Javascript 代码适用于jquery 1.8.3,但不适用于1.9.1及以上版本

Javascript 代码适用于jquery 1.8.3,但不适用于1.9.1及以上版本,javascript,jquery,Javascript,Jquery,我有一个适用于1.8.3的代码(当键入内容时,在模糊或聚焦后成功添加后缀),但不适用于1.9.1或更高版本 <div id="mmm"> <input type=text class="gen"><br> <input type=text class="gen"><br> <input type=text class="gen"> </div> $("#mmm").on('focusout change b

我有一个适用于1.8.3的代码(当键入内容时,在模糊或聚焦后成功添加后缀),但不适用于1.9.1或更高版本

<div id="mmm">
<input type=text class="gen"><br>
<input type=text class="gen"><br>
<input type=text class="gen">
</div> 


$("#mmm").on('focusout change blur','.gen', function()  {
   var myvar=$(this);
   coreid=this.value;       
    $.ajax (
    { 

        url: '/echo/html/',
        success: function (data,status) {
            myvar.empty().attr("value", coreid + "MYSUFFIX" );
        }    
    })
})



$(“#mmm”).on('focusout change blur','.gen',function(){ var myvar=$(此); coreid=该值; $.ajax( { url:“/echo/html/”, 成功:功能(数据、状态){ myvar.empty().attr(“value”,coreid+“MYSUFFIX”); } }) })
检查1.8.3中的Fiddle/如果您更改为1.9.1或更高版本,代码停止工作(键入内容时未在末尾添加后缀)

通过阅读,你会看到发生了什么变化。对你来说重要的是:

jQuery 1.6引入了.prop()方法来设置或获取 属性,并且不推荐使用.attr()来设置 财产。但是,1.9之前的版本仍然支持使用 .attr()用于特定情况

因此,将
.attr
更改为
.prop

$("#mmm").on('focusout change blur', '.gen', function () {
    var myvar = $(this);
    coreid = this.value;
    $.ajax({
        url: '/echo/html/',
        success: function (data, status) {
            myvar.empty().prop("value", coreid + "MYSUFFIX");
        }
    })
})

您还会注意到,如果包含jQuery迁移插件,则可以继续使用
.attr()

正如Terry在下面指出的,.val()可能是不考虑的方法:
myvar.val(coreid+“MYSUFFIX”)

通过阅读,你会看到发生了什么变化。对你来说重要的是:

jQuery 1.6引入了.prop()方法来设置或获取 属性,并且不推荐使用.attr()来设置 财产。但是,1.9之前的版本仍然支持使用 .attr()用于特定情况

因此,将
.attr
更改为
.prop

$("#mmm").on('focusout change blur', '.gen', function () {
    var myvar = $(this);
    coreid = this.value;
    $.ajax({
        url: '/echo/html/',
        success: function (data, status) {
            myvar.empty().prop("value", coreid + "MYSUFFIX");
        }
    })
})

您还会注意到,如果包含jQuery迁移插件,则可以继续使用
.attr()

正如Terry在下面指出的,.val()可能是不考虑的方法:
myvar.val(coreid+“MYSUFFIX”)

通过阅读,你会看到发生了什么变化。对你来说重要的是:

jQuery 1.6引入了.prop()方法来设置或获取 属性,并且不推荐使用.attr()来设置 财产。但是,1.9之前的版本仍然支持使用 .attr()用于特定情况

因此,将
.attr
更改为
.prop

$("#mmm").on('focusout change blur', '.gen', function () {
    var myvar = $(this);
    coreid = this.value;
    $.ajax({
        url: '/echo/html/',
        success: function (data, status) {
            myvar.empty().prop("value", coreid + "MYSUFFIX");
        }
    })
})

您还会注意到,如果包含jQuery迁移插件,则可以继续使用
.attr()

正如Terry在下面指出的,.val()可能是不考虑的方法:
myvar.val(coreid+“MYSUFFIX”)

通过阅读,你会看到发生了什么变化。对你来说重要的是:

jQuery 1.6引入了.prop()方法来设置或获取 属性,并且不推荐使用.attr()来设置 财产。但是,1.9之前的版本仍然支持使用 .attr()用于特定情况

因此,将
.attr
更改为
.prop

$("#mmm").on('focusout change blur', '.gen', function () {
    var myvar = $(this);
    coreid = this.value;
    $.ajax({
        url: '/echo/html/',
        success: function (data, status) {
            myvar.empty().prop("value", coreid + "MYSUFFIX");
        }
    })
})

您还会注意到,如果包含jQuery迁移插件,则可以继续使用
.attr()

正如Terry在下面指出的,.val()可能是不考虑的方法:
myvar.val(coreid+“MYSUFFIX”)


似乎只要将attr改为prop就可以解决这个问题。
.attr(“value”
不是更新输入值的首选方法。(应该使用
.val()
.empty()
对于输入元素来说毫无意义。。注意调用
.empty()
元素上的
无效,因为
元素没有任何子元素。这是了解HTML属性和DOM属性之间区别的好机会。与您的问题直接相关的一个简单示例是
.attr(“value”
大致相当于
.prop(“defaultValue”)
,当您显然想要更改值而不是默认值时。似乎仅将attr更改为prop就可以解决此问题。
.attr(“value”
不是更新输入值的首选方法。(您应该使用
.val()
.empty()
对于输入元素来说毫无意义。请注意,对
元素调用
.empty()
没有任何效果,因为
元素没有任何子元素。这是了解HTML属性和DOM属性之间区别的好机会。与您的问题直接相关的一个快速示例是
.attr(“value”
大致相当于
.prop(“defaultValue”
,当您显然想要更改值而不是默认值时。似乎仅将attr更改为prop就可以解决此问题。
.attr(“value”
不是更新输入值的首选方法。(您应该使用
.val()
.empty()
对于输入元素来说毫无意义。请注意调用
.empty()
元素上的
无效,因为
元素没有任何子元素。这是了解HTML属性和DOM属性之间区别的好机会。与您的问题直接相关的一个简单示例是
.attr(“value”
大致相当于
.prop(“defaultValue”)“
,当您显然想要更改值而不是默认值时。似乎仅将attr更改为prop就可以解决此问题。
.attr(“value”
不是更新输入值的首选方法。(您应该使用
.val()
.empty()
对于输入元素来说毫无意义。请注意,对
元素调用
.empty()
没有任何效果,因为
元素没有任何子元素。这是了解HTML属性和DOM属性之间区别的好机会。quic