我有一个字符串,其中包含以下html:<form>
和</form>
。我想获取<form>
和</form>
html中存在的字符串。我不是试图发布表单或访问发布的数据,我只是试图解析字符串并检索<form>
和</form>
元素中的字符串。我确定它需要通过DOM或正则表达式来完成,但我只想获得一些输入和可能的帮助。
答案 0 :(得分:0)
这是非常奇怪的要求,它表明你做的事情非常糟糕...... 但是,你怎么能这样做......
假设表单看起来像这样:
<form id="myform" method="post" action="action.php" onsubmit="fillFormContentField()"> ... </form>
因此,在表单中放入一个隐藏的输入字段,例如:
<input type="hidden" id="formContent" />
最后,你编写了JavaScript函数,如下所示:
function fillFormContentField() {
document.getElementById("formContent").value =
document.getElementById("myForm").textContent;
}
那么,我们在这做了什么?在提交被正确执行之前,我们将所有表单内容放入一个隐藏字段中。请注意我们使用textContent
字段而不是innerHTML
。另外,我认为textContent
字段与IE不兼容,因此您应该使用特定于IE的字段innerText
。
最好的办法是使用一些JS库,比如jQuery,这只是一个例子。
完成所有这些之后,你只需抓住php端的$_POST["formContent"]
。
然而,我会再次重复:做这样的事情是非常错误的! :d
答案 1 :(得分:0)
$str = "<html><form>getthisstrong</form></html>";
$i_want_this_string_very_much = preg_replace('/.*<form>(.*)<\/form>.*/','$1',$str);
echo $i_want_this_string_very_much;