簡體   English   中英

在html輸入欄中使用返回值函數

[英]Use return value function in html input field

用戶在輸入字段中輸入value之后,我有了一個onblur函數,該函數可以返回輸入字段的正確布局(在正確的位置設置破折號)。 發送表格后,輸入字段為空。

發送表格后如何設置保留值?

function Licenseplate(sKenteken){

sKenteken=sKenteken.toUpperCase().replace(/[^0-9A-Z]/g,"");
var regexp1=/[A-Z]\d|\d[A-Z]/;
var regexp2=/[A-Z]{4}|\d{4}/;
var aMatches;

while(aMatches=sKenteken.match(regexp1))

sKenteken=sKenteken.replace(new RegExp(aMatches[0]),
aMatches[0].charAt(0)+"-"+aMatches[0].charAt(1))

while(aMatches=sKenteken.match(regexp2))

sKenteken=sKenteken.replace(new RegExp(aMatches[0]),
aMatches[0].charAt(0)+aMatches[0].charAt(1)+"-"+aMatches[0].charAt(2)+aMatches[0].charAt(3))

return sKenteken;}

這是我的表格。

<form action="/?" method="POST" enctype="application/x-www-form-urlencoded" name="kenteken" id="kentekenForm">
    <input name="kenteken" type="text" value="" size="8" maxlength="8" id="kenteken" onblur="this.value=Licenseplate(this.value)"/>
    <input id="subHere" type="submit" value="Submit" />
  </form>

不要使用replace:

sKenteken=sKenteken.toUpperCase().replace(/[^0-9A-Z]/g,"");

表單發送到服務器后為空是正常的行為。 如果要用車牌填寫表格,請在處理表格后在腳本中的字段中插入車牌。

PHP中的一個示例:

<?php

// Process the form
...

// Output the form
$kenteken = ( isset( $_POST['kenteken'] ) ? $_POST['kenteken'] : "";
?>
<form ...>
    <input name="kenteken" type="text" value="<?php echo $kenteken ?>" size="8" maxlength="8" id="kenteken" onblur="this.value=Licenseplate(this.value)"/>
    <input id="subHere" type="submit" value="Submit" />
</form>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM