javascript从html输入获取文本并用作另一个html输入的值

时间:2017-01-07 20:05:18

标签: javascript html

我有2个html文本输入,所以如果在第一个我把这个链接 https://example.com/E-LrapH4RtQ&list=PLy0zopi719kGIefv799akiQ7uh-8ntNXt

会的 https://example.com/E-LrapH4RtQ

所以现在我希望第二个html输入值为 E-LrapH4RtQ

<script language="javascript" type="text/javascript">
    function removeytb(string) {
        return string.split('&')[0];
    }
</script>

<input type="text" name="ytburl" onblur="this.value=removeytb(this.value);" />
<input type="text" name="name1" value="" />

4 个答案:

答案 0 :(得分:1)

您可以从以下位置更改onblur:

onblur="this.value=removeytb(this.value);"

为:

onblur="removeytb(this, 'name1');"

为了从 https://example.com/E-LrapH4RtQ 获取最后一部分,您可以使用splitpop

'https://example.com/E-LrapH4RtQ'.split('/').pop()

所以:

function removeytb(ele, secondInputName) {
  // set the value as before but using the element
  ele.value =  ele.value.split('&')[0];
  
  // get the last part from the ele splitting the string
  document.getElementsByName(secondInputName)[0].value = ele.value.split('/').pop();
}
<input type="text" name="ytburl" onblur="removeytb(this, 'name1');">


<input type="text" name="name1" value="">

答案 1 :(得分:0)

这应该有效private void accessLocationPermission() { int accessCoarseLocation = checkSelfPermission(android.Manifest.permission.ACCESS_COARSE_LOCATION); int accessFineLocation = checkSelfPermission(android.Manifest.permission.ACCESS_FINE_LOCATION); List<String> listRequestPermission = new ArrayList<String>(); if (accessCoarseLocation != PackageManager.PERMISSION_GRANTED) { listRequestPermission.add(android.Manifest.permission.ACCESS_COARSE_LOCATION); } if (accessFineLocation != PackageManager.PERMISSION_GRANTED) { listRequestPermission.add(android.Manifest.permission.ACCESS_FINE_LOCATION); } if (!listRequestPermission.isEmpty()) { String[] strRequestPermission = listRequestPermission.toArray(new String[listRequestPermission.size()]); requestPermissions(strRequestPermission, REQUEST_CODE_LOC); } } @Override public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) { switch (requestCode) { case REQUEST_CODE_LOC: if (grantResults.length > 0) { for (int gr : grantResults) { // Check if request is granted or not if (gr != PackageManager.PERMISSION_GRANTED) { return; } } //TODO - Add your code here to start Discovery } break; default: return; } } 你有所有链接存放在数组中然后你只需更改链接的src

答案 2 :(得分:0)

 function removeytb(string) {
     var newUrl = string.split('&')[0];
     var name = newUrl.substr(newUrl.lastIndexOf('/') + 1);
     document.getElementsByName("name1")[0].value = name
     return newUrl;
 }
 
<input type="text" name="ytburl" onblur="this.value=removeytb(this.value);" />
<input type="text" name="name1" value="" />

获得url后,像下面一样对其执行子串,并将其设置为元素而不是拆分为数组。

name = url.substr(url.lastIndexOf('/') + 1);

答案 3 :(得分:0)

好的,这是您正在寻找的快速解决方案!

功能:

function useInput(InputValue,anotherInput)
  {
   InputValue =  InputValue.split('&')[1];
   if(!InputValue){InputValue='';}; //To avoid showing undefined
   document.getElementById(anotherInput).value=InputValue;
  }

HTML

<input id="myInput" onKeyUp="useInput(this.value,'anotherInput')" value=""/>
<input id="anotherInput" type="input" value="" />

当用户输入时,第一个字段的输入被捕获,处理并作为另一个输入字段的值放置(即时)!