Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.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更改下拉列表的值 选择制造 阿库拉 本田_Javascript_Jquery - Fatal编程技术网

Javascript 使用Jquery更改下拉列表的值 选择制造 阿库拉 本田

Javascript 使用Jquery更改下拉列表的值 选择制造 阿库拉 本田,javascript,jquery,Javascript,Jquery,我有一个下拉列表。我已经读取了链接的href属性,并将其指定为下拉列表的值。但我只想从链接中获取数字,并将其指定为下拉列表的值。我如何才能做到这一点 <select name="vehicle_make" onchange="test1(this.value)" style="width: 130px; float:left;" id="vehicle_make" class="home_input"> <option value="">Choose Make&l

我有一个下拉列表。我已经读取了链接的href属性,并将其指定为下拉列表的值。但我只想从链接中获取数字,并将其指定为下拉列表的值。我如何才能做到这一点

<select name="vehicle_make" onchange="test1(this.value)" style="width: 130px; float:left;" id="vehicle_make" class="home_input">
    <option value="">Choose Make</option>
    <option value="2063">Acura</option>
    <option value="2064">Honda</option>
</select>

选择制造
阿库拉
本田
我使用了以下jquery来获取链接作为值

<select name="vehicle_make" onchange="test1(this.value)" style="width: 130px; float:left;" id="vehicle_make" class="home_input">
    <option value="">Choose Make</option>
    <option value="http://store.teknotik.com/category-s/2063.htm">Acura</option>
    <option value="http://store.teknotik.com/category-s/2064.htm">Honda</option>
</select>
$(“#数据a”)。每个(函数(索引){
if($(this.attr(“类”)==“子类别链接”){
//document.getElementsById(“年”).innerHTML=“测试”;
lnk[cnt]=$(this.attr(“href”);
cnt=cnt+1;
//警报($(this.attr(“href”));
}
});
但我想让下拉值为:

$("#data a").each(function(index) {
        if ($(this).attr("class") == "subcategory_link") {


            //document.getElementsById("year").innerHTML="<option value="+$(this).attr("href")+">test</option>";
            lnk[cnt] = $(this).attr("href");
            cnt = cnt + 1;
            //alert($(this).attr("href"));

        }
    });

选择制造
阿库拉
本田
我只想要上面dropdownho send as value中.htm之前的数字。请告知。

尝试
.replace('',)
功能

<select name="vehicle_make" onchange="test1(this.value)" style="width: 130px; float:left;" id="vehicle_make" class="home_input">
    <option value="">Choose Make</option>
    <option value="2063">Acura</option>
    <option value="2064">Honda</option>
</select>

应该只剩下数值了

这里似乎有两部分。。。仅获取您想要的号码:

.replace('http://store.teknotik.com/category-s/','').replace('.htm','')
(不是最优雅的解决方案,但应该有效)

然后设置值:

lnk[cnt] = $(this).attr('href').substring($(this).attr('href').lastIndexOf('/')+1);
lnk[cnt]=lnk[cnt].replace('.htm','');

你可以像下面这样找到它

$("#vehicle_make").val(lnk[cnt])
简易方法:

var url = $(this).attr("href");
var urlTemp1 = url.split("/");
var urlTemp2 = (urlTemp1[urlTemp1.length -1]).split(".");
var yourNumber = urlTemp2[0];
alert(yourNumber);


\d//数字字符
\D//不是数字字符尝试:


希望它对你有所帮助。嘿,他是个新手,请不要低估别人使用它的价值。不要忘记接受答案。如果你使用
替换
,请像这样使用正则表达式:
。替换(/\D/g,”)$('#vehicle_make option[value!=""]').each(function() {
    this.value = this.value.replace(/\D/g, "");
});​
\d // Numerical char
\D // Not numerical char <===
g  // Is a flag which means find all the occurrences, and not only the first.

$(document).ready(function() {
  $("select[name='vehicle_make'] option[value!='']").each(function() {
     this.value = this.value.split("/").pop().split(".")[0];
  });
});